background preloader

Software Developement

Facebook Twitter

It's official: developers get better with age. And scarcer. As a senior developer I get asked sometimes if constant change of technology is making me, well, obsolete.

It's official: developers get better with age. And scarcer.

Personally I don't have problem with high pace of new technologies coming. I actually enjoy learning new stuff. But the question remains: how do developers cope with onslaught of new technologies with age? This kind of data is hard to come by, but thanks to almighty Stackoverflow ands their wise decision (thanks Joel), to make this data publicly available we can mine this data to our collective benefit. With a simple bash script to download the data, a small Java program to extract the stats and Google Docs to make the graphs, I was able to produce some interesting stats. I pulled in data of about 70.000 developers whose Stackoverflow reputation is over 100. In the graphs I only included data if there were at least 100 developers in the age group. Average reputation First interesting statistic is how users are distributed by age. Answers Now, does quality of posts change with age?

Writing A ReadMe File. Volume Number: 14 (1998) Issue Number: 10 Column Tag: Electronic Documentation by Tonya Engst A member of the Macintosh press tells all. Learn about the link between a ReadMe file and press coverage, plus discover the secrets of a great ReadMe file ReadMe First! Nobody expects to find great literature in a ReadMe file, and that's good news for busy developers writing ReadMe files for their software. Although plenty of products have wonderful ReadMe files, over the years, I've encountered a disturbing number of ReadMe files that practically cripple their products through inattention to detail or random organization. In this article, I'll look at what information to put into a ReadMe file, offer a sample ReadMe file outline, talk about file types, and give tips for polishing writing quickly. Just The Facts Ma'am Whether a product is distributed electronically or in shrink-wrap, a good ReadMe file concentrates on basic, vital facts: Where does this come from?

This part is easy. When? Readme Driven Development. I hear a lot of talk these days about TDD and BDD and Extreme Programming and SCRUM and stand up meetings and all kinds of methodologies and techniques for developing better software, but it's all irrelevant unless the software we're building meets the needs of those that are using it.

Readme Driven Development

Let me put that another way. A perfect implementation of the wrong specification is worthless. By the same principle a beautifully crafted library with no documentation is also damn near worthless. If your software solves the wrong problem or nobody can figure out how to use it, there's something very bad going on. Software Rot - Manage those Dependencies : Software & Technology @kirkk.com. In Rotting Design, I spoke of how software tends to rot over time.

Software Rot - Manage those Dependencies : Software & Technology @kirkk.com

When you establish your initial vision for the software’s design and architecture, you imagine a system that is easy to modify, extend, and maintain. Unfortunately, as time passes, changes trickle in that exercise your design in unexpected ways. Each change begins to resemble nothing more than another hack, until finally the system becomes a tangled web of code that few developers care to venture through. The most common cause of rotting software is tightly coupled code with excessive dependencies.

The Problem with Dependencies Dependencies hinder the maintenance effort. Dependencies prevent extensibility. Dependencies restrict testability. Dependencies of the worst kind Excessive dependencies are bad. Types of Cycles. Programmer Competency Matrix.

Parallel Programming

ALGORITHMS. The Joel Test: 12 Steps to Better Code. By Joel Spolsky Wednesday, August 09, 2000 Have you ever heard of SEMA?

The Joel Test: 12 Steps to Better Code

It's a fairly esoteric system for measuring how good a software team is. No, wait! Don't follow that link! The neat thing about The Joel Test is that it's easy to get a quick yes or no to each question. A score of 12 is perfect, 11 is tolerable, but 10 or lower and you've got serious problems.

Of course, these are not the only factors that determine success or failure: in particular, if you have a great software team working on a product that nobody wants, well, people aren't going to want it. 1. 2. If the process takes any more than one step, it is prone to errors. For this very reason, the last company I worked at switched from WISE to InstallShield: we required that the installation process be able to run, from a script, automatically, overnight, using the NT scheduler, and WISE couldn't run from the scheduler overnight, so we threw it out.

Utilities for Programming

Platform-Specific Tools&Resources. Build Systems. Serial Programming.