Development Bootcamp for CS Grads | CR 09

Development Bootcamp for CS Grads | CR 09

By popular demand we have specially tailored an episode for fresh computer scientists who are about to enter the development arena. Things are different here, but if you follow some simple guidelines, you’ll have a much better time started out.

This episode is all about those little things academia forgot.

Direct Download:

MP3 Audio | OGG Audio | Video | Torrent | YouTube

RSS Feeds:

MP3 Feed | OGG Feed | Video Feed | Torrent Feed | iTunes Audio | iTunes Video

Show Notes:

Feedback

  • Emmet has made his own solution and put it on Github — and David recommends Uranos for him.
  • A number of you still love Codeacademy.com
  • Rellon is moving from Windows to Linux development and has fallen in love with Ruby (good choice). He would like some Ruby resources.
  • Adam says he’s loves the show (Awesome BTW!) but is having something of a problem wrapping his head around the arcane world of software licences. GPL? BSD? MIT? Apache? What does it all mean?
  • Pablo suggests we take a look at test driven development and unit testing one day — not a bad idea.
  • Fernando asks how I stay focussed enough on side commercial projects to actually complete them; I wonder if he likes tomatoes?
  • Colin says, “I see your email written in C and raise you a message in Haskell”. Yes, he wrote the email in Haskell.

PSA on Manners and the Real World

First Rule About Source Control: USE IT!!!

  • Everything in Source control no exceptions!
  • Centralised vs distributed?
  • Gui or command line?
  • Commit message formatting?

I Regret to Inform You that the Compiler is Almost Always Right

  • Don’t start with assumption that there is a bug in the vendor’s compiler / framework…
  • Having trouble? Consider writing test…
  • Test before you push, please….

Forget About Being Perfect, Be Good Enough and Get the Job Done

  • Don’t waste a week writing a “perfect” algorithm when a less perfect one will meet your needs and take significantly less time.
  • To that point it is almost always a good idea to use accepted solutions / algorithms for most problems you will encounter, rather than rolling your own.

Code Journal Experiment Update

The Horror!

  • This one is all too common…

JB Community App Update!

Book of the Week

Tool of the Week

Find us:

  • TachydidaxyParse
  • SnakeDoc

    Coder RadiO! BOOOYAAA! Best part of my DAY!

  • Yvan Da Silva

    I’m kinda sad that you bashed out Qt without even knowing about it.

    Why are you comparing XFCE to Qt ? There is no relation at all, in fact if you write an application in Qt, it will look native on GTK engines, Win decorators/OsX decorators etc..

    You are sure you can smell it ? Will you put a dump of your working space online, I’m sure I can find Qt applications you are using and you don’t know they are Qt.
    I’m okay with bashing X or Y product but at least come with some real arguments, because the minutes you spent bashing Qt was plain stupid.

    http://wiki.videolan.org/Qt_Interface << Yes VLC is made with Qt.since the version 0.9.0

  • http://techmansworld.blogspot.com/ncr MHazell

    Hey @twitter-285215642:disqus and @ChrisLAS:disqus , I have a question about JavaScript, and want to know how to do something. Recently, OMG! Ubuntu! did a site update that made their logo move a little bit when you hovered over the logo. I want to know how to do that for my site as well, but I have very little knowledge in JavaScript. Can you cover this in your next show? It would help alot. And thanks for making a great show.

  • Reid Ransom

    I’m a video editor and python fan.. boomshakalaka!

  • http://twitter.com/dominucco Michael Dominick

    @yvandasilva:disqus Thanks for you input. There are definitely good QT apps out there, however, there are shortcomings with it just like there are with every other tool we use. I notice no one get’s upset when I bash on some aspect of Apple’s dev tool chain pretty much every week…. I don’t think I am being unfair to QT — I am just holding it to the same standard I hold everything else to.

    As an aside, I am currently using QT for a project, so I obviously don’t hate it; I am the one who insisted on it, in fact.

    I am sure you don’t mean too defensive, however, I really believe the day we start identifying with tools we use is the day we let them turn to crap.

    Perhaps you are right that I should come back with specific issues — I’ll right some up when I have time for a blog post.

    Right now I have a lot skin in the game with QT. I am the one who is insisting on its use, so if it goes poorly it reflects on me. In short I wouldn’t be critical if I did not care :)

    – Michael

  • http://twitter.com/dominucco Michael Dominick

    Oh and any comparison to of a window manager QT was obviously me mispeaking — podcasting is hard what can I say :) I haven’t listened to the episode but it’s really easy for me to believe I misspoke lol.

  • http://twitter.com/dominucco Michael Dominick

    Sure but please email it in so I don’t forget when I do the feedback section of the notes.

  • http://techmansworld.blogspot.com/ncr MHazell

    What’s the address again. I don’t see it in the show notes.

  • http://twitter.com/dominucco Michael Dominick

    coderradio{[at]}jupiterbroadcasting.com

  • http://techmansworld.blogspot.com/ncr MHazell

    Oh, ok. I’ll email it in.

  • Yvan Da Silva

    Hi there, I’m glad you answered back :)
    About the smell thing, it was not you but Chris who spoke. (About the comparison with XFCE I don’t remember.)

    I’m totally okay with bashing when there is serious arguments to the conversation. Qt is trying to be an uniform toolkit over all the platform, it’s not comparable to GTK due to the lack of features that GTK can give you. Qt is not a “display” framework, it’s much more than that. It would be fair to compare it to Java framework (not the language itself obviously).

    I normally don’t take the time to post because well… it’s not worth it. And I’m not going to make a revolution alone on comments :) When I do it’s more about interest of the conversation and the subject. (So I’m really glad you answered back and I thank you for that.)

    The thing is Qt don’t need that kind of misplaced bashing right now. Nokia is doing evil work on it’s back and on Qt employees and the least we can give them is a cheer, because I dare anyone to find a framework able to do what Qt does except Java, which is obviously not a solution for many.

    If Nokia was smart enough, Qt would already been on any mobile devices out there including Android. Sadly they are dump as *** period.

    If you need any help to your Qt, I conjure you to ask me, I’ve a lot of experience with Qt and I’m sure I can help doing it and doing it right. By the way, forgive me poor English, I live in Switzerland and my mother tongue is French. (I also speak, portuguese and german).

    Best regards,
    Yvan.

  • Yvan Da Silva

    2nd reply : About the “There are definitely good QT apps out there, however, there are shortcomings with it just like there are with every other tool we use.”

    I would also like to mention that many people use the wrong language and the wrong framework to solve their problems.

    Language wars is an old story, frameworks wars are just their modernization.
    Like languages (Ruby is the best ! No it’s C++ ! No it’s python… ) frameworks have the same issue. People try to do everything with their favorite language and that’s BAD! (You should also do an episode about this, I would love to hear or even participate.) I had the chance to study with teachers that are amazingly competent. People that know barely all languages and that code in all of them. I had a course name “Paradigm of the coding languages”. I had to deal with Ada, Haskell, Prolog and others. All languages have their purpose like all frameworks do.

    I’ve seen people trying to do applications that require speed, memory efficiency, high DB & networking operations with Java. And yes it’s slow and not memory efficient at all. You can spend countless hours trying to improve your code, but it will never be the same as if you used the right tools.

    SQL is great (I learned with it and love the structure) but seriously it’s slow as hell compared to some non SQL based schema. So it obviously depends on what you do and that’s the reason couchDB is getting a huge success.

    I’m sure you already know about this, sadly most devs don’t.

    Oh and before you ask, yes I like to dev with Qt, obviously I haven’t found an equivalent that work that well for Desktop apps not matter your platform of development including embed devices.

  • http://twitter.com/dominucco Michael Dominick

    Interesting that you bring up Java; that is actually the option I shot down. It was for all the reasons you mention, but the killer feature that QT had in addition to being faster? The GUI designer. The fact that it allows me to drop objects directly on specific location and drag them, rather than doing some annoying relative layout nonsense is worth its weight in gold.

    Be careful what you wish for on the asking you for help lol. I may end up doing that lol.

    Oh and Objective-C is the best ;)

  • Yvan Da Silva

    omg, lol, don’t speak to me about Objective-C you’re walking on a mined floor :D

    The Gui designer is for sure an awesome (If you don’t do all the connects and stuff like you shouldn’t do manually in the code, yes I’ve seen that… many times). Layout management with the gui designer is really nice too, very simple, straight forward.

    A feature that is missing is the custom widget loaded on the designer on the fly. You must compile it and then put it as a plugin to qt-creator (pain in the *** method).

    The big + speaking of the ui and avoid talking about the designer ?
    It looks native everywhere. << yeah Swing… doesn't ^^

  • Yvan Da Silva

    forgot to mention: feel free to ask anything you want, you should be even able to send me mails trough G+ since we are in each other circles and I allowed the feature.

  • simion ploscariu

    Chris has no idea what Qt realy is, it is more then the GUI part. Should read at least the wikipedia page and and get uptodate.

  • Gnaeus

    Sigh, I would feel bad for nixie but I feel like she completely undermines her point when she uses her sexuality to get views. E.g. her response video to this whole thing is titled “I’d Rather Vlog Naked” rather than something non-sexual like “Open sourced discrimination”.

  • MCP

    I love the show. I’m another junior developer, I guess you’ve got a few running around, and it is a blast to listen to you guys while riding my bike into school. It makes biking around an already great city (Portland) that much better! Keep it up! Oh yeah, that reminds me, I’ll be using those affiliate links when I make my amazon purchases. Thanks again.