Software Engineering

For software engineers and those interested in learning about and developing skills in the area.

How a Java Guy Became a Ruby Developer

For in the Road Thumbnail
Once upon a time — OK, in 2012 — there was a startup and an engineer. They were both in the market, seeking their match. The startup needed a solid engineer for its Ruby on Rails application, and the engineer was a Java guy looking for his next great platform to build. Clear-headed observers would never have guessed that this mismatched pair would find themselves together, but they defied the odds and everyone’s better for it. This is their tale.… continue…

Tech Venture Funding Rises 10 Percent

Dice Techonomics
The trends in venture funding last year were much like those in the job market: While overall numbers were down, those in tech were up. Overall venture funding in the U.S. fell 10 percent during 2012, to $26.5 billion. That’s the first decline in three years. On the other hand, the software industry — historically the largest investment segment for venture capital — posted a 10 percent increase over 2011 to $8.3 billion. A total of 1,266 software deals were… continue…

7 Interview Questions About Citrix

Citrix Logo
Citrix serves nearly a quarter of a million clients around the globe with its dozens of products. Its software includes open source cloud computing technologies as well as server and desktop virtualization tools. When scouting for engineers who know Citrix, employers want not only a broad understanding of its applications, but considerable hands-on experience as well. If you’re interviewing for a Citrix-related position, you can expect to hear these questions. How many Citrix users do you support in your current… continue…

The Basics of Perforce, a Free Enterprise VCS

Perforce VCS
It’s hard to believe that as recently as 10 years ago, many bedroom developers hadn’t got into using Version Control Systems. Shamefully, I can remember occasions when I had multiple source versions going and had to struggle to work out which one was the most recent. It was madness and I once lost an important file and then a full day recreating it from scratch. By far the most popular open source VCS is probably Linus Torvald’s Git. But for… continue…

Where the iPhone 5 Kicks the Mars Rover’s Butt

Martian Landscape
Giving the Mars Rover Curiosity the brains she needs to operate took 5 million lines of code. And while the Mars Science Laboratory team froze the code a year before the roaming laboratory landed on Aug. 5, they kept sending software updates to the spacecraft during its 253-day, 352 million-mile flight. The rover’s mission is to gather and analyze the Martian landscape for signs of microscopic evidence that life may have once existed there. Right now, she’s preparing to drill… continue…

Comebacks for When They Say ‘Your Code Sucks’

Magnifying Glass Code Thumbnail
It’s tough enough to have people criticize your code, especially when the comments are coming from an intern. On Slashdot, one anonymous user had precisely that gripe. After ten years as a developer, the kid “started ripping into my on how terrible it is,” with complaints that are “simply because he does not have the experience with it to actually understand what the code is doing.” His bottom line question: He is a smart guy with lots of promise, he… continue…

More on Taking the Pain Out of Code Reviews

CSS Code
Code reviews are one of the most valuable exercises we conduct in software engineering. They’re also among the most painful. Last week, I looked at different approaches and the circumstances where each can be most effective. This week, we’ll get into source code management tools, and how the branching or commit mechanisms can affect how easy — or difficult — it is to isolate code for review. Source Code and Branching Code reviews are about units of code, usually one… continue…

10 Nice Ways to Say ‘Your Code Sucks’

Slipping and Falling
When you’ve got a colleague whose work looks more like Medusa’s hair than code that’s actually supposed to do something, you don’t have many good options: You can fix it yourself, complain to your manager, whisper about it to other team members, hold it all in until your head explodes or, maybe the scariest of all, go talk to the messy coder directly. The truth is, the scariest option is also the best. Most of the time, you can do… continue…

How to Take the Pain Out of Code Reviews

CSS Code
Code reviews. There may be nothing in software engineering that’s simultaneously more painful and more helpful. They’re helpful because they provide specific feedback looking at the code as code. They go beyond “Does it work?” and become learning opportunities for both the author and reviewer. But they’re painful because … well, have you been in those meetings? It’s always painstaking work to read so closely and look for small mistakes. Now do it in a three-hour meeting. It’s no wonder… continue…

Learn How to Program in Dart

Dart Language
This is the first tutorial in a series on learning to program in Dart, Google’s alternative to JavaScript. Although no other browser manufacturer has shown any interest in implementing Dart, JavaScript has certain flaws, particularly in maintaining large applications that effectively limit it. Big JavaScript applications are hard to debug and maintain. Google developed its Web Toolkit, or GWT, for developing applications in Java, then translating them to JavaScript. Dart takes a similar approach. You write and test your code in Dart,… continue…