self-improvement

How do I go about "networking" to find a better job?

I don't really know who the players are in town, and I've been told that for the freedom I seem to need to enjoy my job I should try to find a smaller shop without all the "nickel and dime" time tracking bureaucracy. I've been here (Halifax, NS, Canada) for two years, but most of the software folks I know are people I work with or those...

What is your definition of a Entry Level/Junior/Mid/Senior Developer?

A friend of mine working with an offshore team asked me to provide my definitions of the various stages of the developer life cycle. What did Entry Level, Junior, Mid Level, and Senior developer mean to me, and what were my minimum expectations from each level. Whats your definition? When would you change someones job title in you...

What's the next thing on your list to learn?

Subject line says it all. What's next on your list of things to tackle and get to grips with? Got a language you want to learn? Want to grok dynamic programming? Think it's about time you understood type theory? What's next? And why? ...

The current and next "big things" in back-end web development?

In short, I'm looking for something to replace PHP. I moved from ASP to ASPNET but since dumping Windows completely, I've ended up on PHP and that's been the state of play for the past 18 months. It's universal and it'll deploy everywhere but despite its considerable power, it isn't a well structured language and I can't help but feel a...

Should I take programming courses when I already have experience?

I have been a programmer for about 3 and a half years. I took a few computer science courses in college ( specifically C and Java), but recently feel like there's a number of things I wish I knew. Real nuts and bolts computer science type things. Stack versus heap. Design patterns, good database design. I am reluctant to go back to sch...

Top 3 things I can do to make myself an attractive co-op hire

What can I do to set myself apart from other applicants as a student looking for a co-op? For the sake of this question, assume that I have just walked into a computer science program this semester and have no previous experience in programming, whatsoever. I have about a year before I'll be looking for a job and in that time I will ...

How do you keep the state information of the projects you're working on?

Let me clear what is state information of a project: Any information that have to remembered or written and then retrieved when one resume its work on a project (for example, on the next morning when arrives at work, or at the evening when start to work on the side project). For example, when you open the project/solution how, where an...

What's the program you've really wanted to write but never found the time?

I think that the best, and maybe the only, thing to do to get better as a programmer is to program, i.e. to create new stuff, build new apps, solve new problems. But during our daily jobs we (well I can only speak for myself :)) usually do a lot of maintainance programming, debugging, support and other work that could be categorized as ...

What do you do when researching for a project?

I'm about to undertake a personal project, but I'm having trouble coming up with background information in the problem domain. I have some experience, and Google has provided me with more, but I'm still not sure that I have all of the information I need. If you have ever been in this situation, either at work or on your own, what did you...

Games to improve programming skills

I've heard (and read somewhere) that there are certain games out there such as ancient Japanese game GO which help to improve the programming skills. We know chess helps a lot in improving our mental power. Besides chess, do you play any games as an exercise to improve your programming skills? ...

What are effective ways to log and track programming mistakes?

On occasion I've heard people discuss the benefits of keeping track of programming mistakes, if for no other reason than it increases awareness of common errors. I've started to keep a list of bugs that I find in my code, along with what could have led to them. The main question I have is this: What information related to my mistakes...

How and why did you get into programming coming from another background?

There are many programmers who come from other backgrounds like engineering, physics or even social sciences. I have found myself programming more and more during my post graduate studies in the field of manufacturing and I am thinking about taking a programming job when I finish, because I find programming very creative and intellectual...

How to relearn programming the right way

Before I took programming courses in high school and college (which did not teach me much besides new syntax for new languages), I started out with a Python tutorial that served as a general introduction to programming. It included variables, if statements, loops, etc. At that point I was so excited about programming that I picked up Lea...

What are the most popular C# open source projects?

Most popular open source projects seem to use C or C++. I'm looking for a widely used and complex open source project that uses C#. Any suggestions? My preference would be for projects that are developer tools. ...

What conferences have you attended that were the most interesting or most useful for your professional development?

I recently attended the QCon 2008 (http://qconsf.com/conference) international software developer conference in San Francisco and was very pleased with the quality of the speakers - and the quality of discussions that were participated in by the other attendees. One aspect of the conference that was a very pleasant surprise: the percent...

Best reason not to hire a PhD?

In my experience, generally speaking, CS PhDs are used to work hard and put in many hours are more motivated than others professionally can analyze a problem effectively can communicate very well in presentations and reports Thus, what is the best reason not to hire a PhD on your development team? And how do you recognize this nega...

How can I use the Dreyfus Model of skill acquisition?

How can I use the Dreyfus Model of skill acquisition specifically to improve programming skills? ...

What made you realize you passed a stage with your programming skills ?

One day, I was told to make "a quick fix" in some horrible code. I just opened it up and entirely read it, understood it then fixed it in one row. I mechanically added some comments to explain what the code was doing, what I did as a fix and some "// TODO" to keep tracking of the improvement it would be nice to make. It took me less tha...

How not to rush yourself?

I often find that I do a less than complete work on a feature, especially in the Design phase. I detect several reasons: I'm over-optimistic I feel the need to provide quick solutions, so sometimes I fool myself into thinking the design is fool-proof when in fact it's still full of holes, just to get the job done faster. Of course I en...

What language should I learn to give me something very different from C#?

I know C# and VB and want to learn a new language soon, but I don't want to learn something which is 'just like C# or VB but a bit different'. Ruling out Java for example (I already know a bit anyway). What's a good language to try? Should I go for an interpreted language like python, ruby, or PHP, or will I learn more from a lower-leve...