Lostcast 99: The Setup



  • Great podcast! It is always interesting to hear the dev stacks for other developers. In the spirit of this episode I thought it would be fun to start a thread where we can share out setups. Also, since I develop primarily on Windows, this is also relevant to the Windows discussion portion of the podcast!

    I mainly do web development (though I also do a bit of cross platform mobile applications via AngularJs/Ionic/Cordova) in C# and TypeScript.

    Operating System
    As mentioned, I’m a long time Windows guy and I like to live on the bleeding edge. I’m currently on Windows 8.1, but I’m getting ready to migrate my systems over to the Windows 10 technical preview. I’m very excited that they are introducing update tracks (similar to OSX or Chrome nightly development builds) that will allow for rapid updates to Windows. Some of the updates to Windows 8 (like the task manager, and explorer) are really great!

    IDE
    I develop on Windows 8.1 and my primary IDE is Visual Studio 2013, and I use SublimeText as a secondary editor for miscellaneous tasks. Being a long time VS user, I was very excited when it was recently announced that .NET has gone open source and there will now be a free VS SKU known as the “Community” edition. While there has always been the free “Express” versions in the past, the “Community” edition now is on par with the features of the paid-for “Pro” versions (like IDE extensions etc). The web development tools for VS have gotten extremely good in the past few years, and I can only image that with this move to go open source things will continue to improve.

    EDIT: To add that not only is .NET now open source, but it is also cross platform. While you’ve been able to run .NET on Linux/Mac via Mono for some time, it is now an officially supported platform. Also, via OmniSharp .NET develoment can be done in your favorite editor (SublimeText, emacs, vim).

    Command Line
    Like you guys mentioned, one of the things I envy the most about the *nix platforms is the cohesiveness of the shell. While Windows has PowerShell, I still prefer cmd.exe. I like to stay as close to a native environment as possible, so I don’t use cygwin, but I do download and put these *nix utilities that have been ported to Win32 my PATH. This allows me to use ls, grep, cat, touch, wget, curl, etc right from the native command prompt (including color coding!). I’m also a fan of the tabbed consoles via the Console2 application.

    Source Control
    While I’m very comfortable with using SVN at the command line, I’m pretty new to git, so I still prefer a GUI. I found that I really enjoy using SourceTree from Atlassian. It runs on Mac and Windows, and it is a super clean and easy to use app. It also has a button to launch directly into a built-in cygwin environment with git configured. I can’t recommend this enough!

    File Explorer
    Again, I like to keep things native here and I’ve stuck with Windows Explorer for a long time (which has gotten some really nice improvements in Windows 8). That being said, I can’t live without Clover3. It is an extension for Windows Explorer that adds the tabs from Chrome right onto the explorer windows. It behaves just like Chrome does with the ripping off and docking of tabs. It also has a nice bookmarks bar. While it can be a bit buggy, I’ve mostly learned how to avoid the buggy areas. This one has completely spoiled me, I can’t go back!

    Multi-monitor
    On both my work and home machines, I prefer multiple monitors instead of multiple desktops. I use a 3-monitor setup on both of my work and home machines (center, left and right). Windows 8 introduced taskbar support for multi-monitor setups, which is really great. However, I still prefer to install and use DisplayFusion as its adds some extra customization features and keyboard shortcuts that I enjoy. If you are still using Windows 7, and you have multi-monitors, I would definitely recommend checking this out. Having a taskbar on every screen is vital for me.

    Desktop
    I recently stopped using the desktop as a working area for files, but before that I used it extensively. If you are still using the desktop for working with files you should check out Stardock’s Fences. This desktop extension adds little container areas that are fenced off, basically adding grouping of icons. What is really nice is that you can have newly saved files to the desktop show up in a designated fence. Also, it is really great if you remote desktop into your Windows machine as it will preserve the location of your icons!

    Also Bins is a great taskbar enhancement that allows you to group multiple pinned application into a single tile. I use this to group my IDEs, browsers, etc.

    Also, if you are into multiple desktops, Windows 10 will have this feature natively!

    Misc Tools
    And finally, in no particular order, are a list of utilities that I use:

    • Notepad Replacer - Allows you to replace Window’s notepad.exe with the editor of your choice; all invocations to the default editor (even directly to notepad.exe) will be redirected to your favorite editor! Long live SublimeText!
    • WinMerge - File diff tool
    • FileSeek - Basically a visual version of grepping all files in a given directory.
    • ClipX - Clipboard manager; one of those things I didn’t thing I needed until I started using it for coding; being able to copy multiple code snippets and then paste them out, or even have a history of copied contents is more valuable then I thought it would be!
    • Listary - An awesome search utility for ANY list in windows in ANY application (think explorer windows, file picker lists). Totally awesome if you want to stay on the keyboard and still be able to navigate quickly.
    • HashTab - Adds a new tab to the Properties dialog you get when you right-click a file. Used to calculate checksums. Makes it easy to determine if two files are the same or not.
    • TreesizeFree - Allows you to quickly track down where your disk space is being used.
    • Fiddler - An excellent HTTP debugging proxy; makes it easy to inspect HTTP requests/responses. Allows you to set breakpoints so you can modify the requests/responses as well. Invaluable for web development.
    • Postman - A REST client; very useful when working with RESTful APIs. It is a Chrome plug-in, but an icon can be added for quickly launching from the desktop.

  • LDG

    Cool, thanks for sharing! Later I realized that we didn’t spend enough time talking about the meat 'n potatoes of Windows dev, like Visual Studio and .NET. I had no idea .NET was open source at all, that’s awesome!

    I’ll be buying my new Windows machine pretty soon and I"ll definitely be sure to check out these tools.


  • Tiger Hat

    "Wait, I’ve got someone at the door…"
    Best 30 seconds of Lostcast EVER!!


  • Tiger Hat

    I am device agnostic: at work I’m on Windows, at home I’m on Mac.

    As such I my needs centre around storing files in the cloud and pulling them to wherever I’m working whenever I happen to have time available. Fortunately someone invented GitHub, so this is easy thanks to a little help from the people here. I use Github’s desktop apps to sync all my work. Commit comments also help me keep track of where I was up to, in case I don’t make it back to the code for a few weeks.

    Apart from that, all I need is Sublime Text and Chrome and I’m away :)

    I tend to draw and scan my images, using photoshop or whatever scan utility is available, but I will likely check out pixelmator like @richtaur mentioned in the 'cast, as this is quite a laborious process. I did try using open source art, but like @geoffb I found it impossible to find what I wanted. I haven’t used any sound yet…


  • Patron

    So, while watching VGHS’s Post Production BTS video Matt said something akin to: " You really have to enjoy the process of doing this, because if you do it based of off the end results of people liking it or not you’re probably gonna kill yourself" and that made me think.

    I hear a lot of experienced indie devs saying similar things, that they just like to make games, that they don’t care much about what people are gonna think about it.

    Based on that, I would like you guys to discuss about how to make your setup be more fun to work with.

    Sure, being productive is very important, specially if you’re doing this for a living, but I think that no matter how clumsy and unoptimized your setup might be, if you’re having fun doing what you’re doing with it, you’re gonna be instantaneously way more productive.

    And after all, most of your listeners are hobbyists, so, having fun is the most important part of making games.

    Of course, there’s a big overlap between being productive and having fun, but that’s not always the case. I don’t have anything to support this theory, but I belive that sacrificing some simplicity for the sake of fun is almost always worth it.


  • Tiger Hat

    @Josue Totally agree - I tried to sacrifice my cat for fun and my mum went mental! What is wrong with her?!


  • Patron

    What exactly does having a cat have to do with simplicity?


  • Patron

    @cheersphilip said:

    Best 30 seconds of Lostcast EVER!!

    Wouldn’t it be super cool if they did a RawCast, with no editing at all?


  • Tiger Hat

    @Josue let’s pretend that Simplicity was the cats name. (It wasn’t - it was Ribena)


  • Tiger Hat

    @cheersphilip Yes, I said was

    Muahahaaa


  • Tiger Hat

    @cheersphilip and yes, I am replying to myself.


  • LDG

    @cheersphilip said:

    "Wait, I’ve got someone at the door…"
    Best 30 seconds of Lostcast EVER!!

    oh fuck me is that part in there?? I added a marker, and I thought my marker system was pretty tight. What time does that happen?


  • Tiger Hat

    @richtaur said:

    oh fuck me is that part in there?? I added a marker, and I thought my marker system was pretty tight. What time does that happen?

    I’m with @cheersphilip that part was brilliant don’t remove it, it’s my second favourite Lostcast moment ever. Well, back to work.


  • LDG

    @cheersphilip said:

    I am device agnostic: at work I’m on Windows, at home I’m on Mac.

    Nice, I feel like this is really important in avoiding platform lock-in. Haven’t switched platforms in years but I’m confident I could if I hadda for some reason.

    Apart from that, all I need is Sublime Text and Chrome and I’m away :)

    Awesome! Simple dev env = happy dev env!

    I tend to draw and scan my images, using photoshop or whatever scan utility is available

    Oh that’s interesting. I’ve been practicing my drawing fundamentals recently and a big part of that is getting away from digital and back to the basics like pencil 'n paper… There’s also these awesome oldschool devs I rediscovered recently, the Pickford Bros who draw stuff by hand, scan it, and then finish digitally. Love that kind of craftsman mentality.

    I will likely check out pixelmator like @richtaur mentioned in the 'cast, as this is quite a laborious process.

    That’s actually what Geoff uses, I’m on Photoshop CS5. Yah I’ve drawn/scanned stuff before and it can be a pain, feels like it takes too long, and the resulting image you get doesn’t have separate layers. Drawing on tablets of any kind, even just an ipad or something, is a much better way to go digital, at least for me. But I’m also extra lousy at traditional mediums, so maybe I’m just desperate to get away from them ;)


  • Patron

    @cheersphilip said:

    Best 30 seconds of Lostcast EVER!!

    That was actually starting to give me some ASMRs…


  • LDG

    @Josue said:

    I hear a lot of experienced indie devs saying similar things, that they just like to make games, that they don’t care much about what people are gonna think about it.

    Yeah it’s important to just double down and do the work, but… These days we do spend a lot of time/effort thinking about how how people will receive the game. But I think that’s more of a general thing, like “seems clear to us that gamers would probably enjoy a simple, light-hearted tactics game” instead of agonizing over every decision like “would a player think this ability is overpowered?”

    I would like you guys to discuss about how to make your setup be more fun to work with.
    Sure, being productive is very important, specially if you’re doing this for a living, but I think that no matter how clumsy and unoptimized your setup might be, if you’re having fun doing what you’re doing with it, you’re gonna be instantaneously way more productive.
    And after all, most of your listeners are hobbyists, so, having fun is the most important part of making games.

    Good idea! Pretty much the more fun you can have, the happier, healthier, more productive you’ll be. It’s a win across the board.


  • LDG

    @Josue said:

    Wouldn’t it be super cool if they did a RawCast, with no editing at all?

    These days that would just mean more mistakes, more dead air, and more “uhhh” or “ummms” … IDK if anybody wants to hear that ;)


  • Patron

    @richtaur said:

    These days we do spend a lot of time/effort thinking about how how people will receive the game.

    Yeah, sure.

    I’m just saying that those dev’s motivation isn’t fueled by people liking their games but by the joy that they experience while creating them.

    That’s specially difficult to me. I really don’t like making games at all. The process of making games for me is mostly very stressful and includes lots of me banging my head. But when I get to show my game to people, it’s all worth it.

    The problem with that is that people won’t always like your games. If that happened to me, I would be immensely demotivated.

    I think that’s one of my main problems as a creative person in general: I don’t really enjoy making things, I like showing things I made to people.


  • LDG

    @Affordable_Desk said:

    I’m with @cheersphilip that part was brilliant don’t remove it, it’s my second favourite Lostcast moment ever. Well, back to work.

    haha! Well… I am lazy, and not doing it is easy, so … maybe ;)

    More than that part itself I’m wondering what else has slipped through the cracks…! Here’s the way we do it:

    1. Something unwanted is recorded e.g. Geoff being unbelievably loudly flatulent
    2. I hit control+k in Logic, which places a marker
    3. Later I find the marker and remove that part

    So that delivery should have had a marker I’d imagine???! And if so how in the pissss did I miss it?? AND WHAT ELSE HAVE I MISSED?? My OCD is flaring up…


  • Patron

    @richtaur said:

    AND WHAT ELSE HAVE I MISSED?? My OCD is flaring up…

    I’m pretty sure that, if you had missed something else, we would be making fun of it right now.



  • Actually @richtaur there was something I wanted to ask about this now that I remember. I was making a video of graphical-masterpiece-and-dubstep-shoot-em-up game of the year Dead Bits with @Elite and he couldn’t turn down the god awful music in the game. I could because I was using the sound mixer built into Windows which sounds like the one you were describing that @geoffb told you about with the individual sliders for the running applications, at the time I told @Elite there must be a way to do this on Macs (he uses a MacBook) and that he should ask you. Are you saying that Macs don’t have this functionality? I’d be really surprised if that’s the case, and if it is did you find a way around this?


Log in to reply