background preloader

Don’t Call Yourself A Programmer, And Other Career Advice

Don’t Call Yourself A Programmer, And Other Career Advice
If there was one course I could add to every engineering education, it wouldn’t involve compilers or gates or time complexity. It would be Realities Of Your Industry 101, because we don’t teach them and this results in lots of unnecessary pain and suffering. This post aspires to be README.txt for your career as a young engineer. The goal is to make you happy, by filling in the gaps in your education regarding how the “real world” actually works. It took me about ten years and a lot of suffering to figure out some of this, starting from “fairly bright engineer with low self-confidence and zero practical knowledge of business.” 90% of programming jobs are in creating Line of Business software: Economics 101: the price for anything (including you) is a function of the supply of it and demand for it. There are companies which create software which actually gets used by customers, which describes almost everything that you probably think of when you think of software. “Read ad. Anyhow.

How to Measure a Company's Most Elusive Element: Culture Your organization has a set of values and a culture, whether it was engineered or not. Most organizational cultures tend to revolve around the personal values of the founders, even if the company has been around a long time. Young companies tend not to think much about culture because they are too busy focusing on customers and shareholders. Southwest Airlines is one of those rare companies that has maintained it culture of humor, focus on the customer, and efficiency, long after founder Herb Kelleher stepped down as CEO. 3M is also a company that has been through leadership changes, yet stays focused on the core value of innovation. Most mature companies tend to see a major culture change in a negative direction when the founder steps down.

The Programmer's Bill of Rights It's unbelievable to me that a company would pay a developer $60-$100k in salary, yet cripple him or her with terrible working conditions and crusty hand-me-down hardware. This makes no business sense whatsoever. And yet I see it all the time. It's shocking how many companies still don't provide software developers with the essential things they need to succeed. I propose we adopt a Programmer's Bill of Rights, protecting the rights of programmers by preventing companies from denying them the fundamentals they need to be successful. The few basic rights we're asking for are easy. OpportunisticRefactoring refactoring tags: From the very beginning of when I started to talk and write about refactoring people have asked me how it should be incorporated into the wider software development process. Should there be refactoring phases in the software development lifecycle, what proportion of an iteration should be devoted to refactoring tasks, how should we figure out who should be assigned to refactoring duties? Although there are places for some scheduled refactoring efforts, I prefer to encourage refactoring as an opportunistic activity, done whenever and wherever code needs to cleaned up - by whoever. What this means is that at any time someone sees some code that isn't as clear as it should be, they should take the opportunity to fix it right there and then - or at least within a few minutes. This opportunity can come at various parts of implementing some new functionality or fixing a bug. Sometimes you see an opportunity when you're in the middle of something else.

Android 4.0 Ice Cream Sandwich review The next version of each smartphone's operating system is always the best. We impatiently wait for the latest and greatest firmware to come around, expecting it to liberate us from the shackles of last year's code and features that haven't shown up yet. This happens incessantly with Google's Android OS, and version 4.0 -- unveiled at this year's I/O conference in May -- is no different. Known as Ice Cream Sandwich (referred to henceforth as ICS), the last word in the title indicates the merging of Gingerbread, the most recent phone platform, and Honeycomb, the version optimized for use on tablets. We knew this much, but were otherwise left with conjecture as to how the company planned to accomplish such a feat -- and what else the new iteration had in store. But now the time of reckoning is upon us, and the Samsung Galaxy Nexus -- Android 4.0's mother ship -- is slowly spreading across the globe, its users being treated to this year's smartphone dessert. Table of Contents See all photos

Don’t Be Trapped By Dogma For me, the greatest lesson that Steve Jobs taught is summed up in this statement from his renowned 2005 Stanford Commencement speech: “Don’t be trapped by dogma, which is living with the results of other people’s thinking.” Steve, and the companies he built, proved highly resistant to dogma, to other people's thinking. No one could imagine what someone would want with a personal computer until the Apple II came along. The Macintosh was initially dismissed as a toy. How could Pixar ever think people would sit through a feature-length computer-generated animated film? Who is going to spend all that money on an iPod? Most companies are dogma machines. Dogma isn't just about what you make, but how you do it. Companies also have to be willing to question their own dogma. Apple, under Jobs, continually remade itself. Mourning and rememberance are important and good.

How to Think Like a Programmer: Part 1 This is the first of a three part series regarding how to think like a programmer. Writing code involves a mode of thinking that is foreign to most people. However, writing code is not a unique process. There is actually nothing very special about it. But most people are simply unequipped to think in the manner required of good programmers. That is not to say that they are unable to put together a piece of software. One of the recent discussions on TechRepublic, "Has calculus enhanced your IT career?" One example of this is the passing of tabular data that is in a rigid format (such as the results of a SQL query) via XML. For decades, programmers were scientists or mathematicians who ended up writing code. To be not just a good programmer, but a great programmer, you need to understand the scientific and philosophical ways of thinking. You can be a "shake and bake" programmer by going through something like DeVry or Chubb or Kumar, or whatever. J.Ja

Stephen Asher Consulting, UK and international, business or personal, tax planning consultants Residence and Domicile As part of our UK and US tax return preparation service ,we will help you to understand your tax status in the UK. The extent to which you will be liable to UK tax will depend on whether you are: Resident; and/or Ordinary resident; and/or Domiciled in the UK These terms are not defined in law but the rules are largely based on case law. There has been much publicity over the last couple of years about reviewing the rules and their application following the publication of an Inland Revenue consultation document. How can Stephen Asher Consulting help you? Whether you are coming to the UK, are already working here, or are leaving the UK, it is important that you seek advice as to: What your residence and domicile status is or will be What are the resultant tax implications, including UK inheritance tax How to structure your affairs to take advantage of any beneficial tax treatments What records you need to keep How the remittance basis of taxation works

Meaningful Play. Getting »Gamification« Right.

Related: