Advertising
Advertising

5 Things That Every New Developer Needs to Know

5 Things That Every New Developer Needs to Know

    Even though I have only been developing software “professionally” for around two years, there is a ton of information that I can pass on to fledgling developers and hackers. Learning how to program is just the beginning of learning software development and actually becoming awesome at it.

    If you are taking computer science or MIS/CIS courses at a university, I can imagine that you are learning technical aspects, system design, programming languages, computer logic, and maybe even a little user interaction design.

    The problem is that with any technical field, there is almost too much to learn. So, here are the top 5 things that every new developer needs to know to prepare themselves for the “real world” of software development.

    Advertising

    You can’t please everyone all the time. So don’t.

    When it comes to designing and implementing new software and systems, you will inevitably have some system users. Also, you tend to have more than one type of user for a system, like an administrator, data-entry user, and reports users. With all of that user interaction you are going to hear a lot of “I need this…” and “yeah, but…” when it comes to different features and implementations.

    The problem is that you can never please all of these users. Ever. So, learn how not to people please and learn to say no more than you say yes to new features and ideas.

    Don’t be a butthole, but don’t be mister nice buy either. Try to implement only a handful of features at a time that will give your users the most bang for their buck. Then iterate.

    Make learning a top priority

    The reason I got into software development was because I loved learning new things and solving problems. In fact, that’s all I do all day, every day. So, when it comes to learning new languages, operating system technologies, platforms, etc. you have to always be on top of your game. You can get a really great series of tutorials for learning about some awesome technologies like Ruby programming, iOS game development, designing responsive web sites, and even Photoshop over at Lifehack Deals right now.

    Advertising

    These types of “packages” are an easy and effective way to learn new things quickly. I remember when I was just getting into Ruby on Rails development and I purchased the infamous Ruby on Rails Tutorial package. I created a sample application in about a week and had a great base knowledge of the Rails framework to build off of.

    You will never learn it all, so take advantage of learning as much as you can as fast as possible.

    Know your limits

    Another thing that you have to learn early on is what you can and cannot do when it comes to development and different technologies. Just because you could solve problems in college classes does not mean that you can do anything when it comes to the “real world”.

    When I was first working at an insurance company as an intern I was amazed at just how many moving parts there were to an old, complicated system. I remember lead developers explaining things to me that completely went over my head. I felt like I had no clue what I was doing. That’s because I really didn’t.

    Advertising

    It was a wakeup call to say the least. I learned very quickly that I can solve every problem, every time all by myself. You have to understand that your knowledge has limits. When you reach the edge of your limits, it’s time to reach out to others that know more than you do.

    Get users involved

    Remember me talking about how users can be a pain? Well, they can be your best ally if you put them in their place! Seriously though, users are the ones that are going to be using the thing that you are creating so it’s important to know what their job is, what annoys them, and how to delight them.

    If you understand your user’s basic needs, then you have made a great step forward in creating a usable and wanted system for them.

    Try to ask users for their input about features and how something should work. Remember not to promise anything though; just get an understanding of what makes the person that uses your system tick.

    Advertising

    Don’t just lock yourself in a room and code. Learn business stuff.

    There was a guy in school that I knew that was a crazy hacker type. You could give him any problem and he would have it solved in C using vim in no time. That was cool and everything, but he was a total nerd, couldn’t really hold a conversation, hated everything that was “mainstream”, and didn’t care about “business” at all.

    But, he was good at programming.

    Although coding is a super important skill to a new developer, you have to understand business processes, business politics (I hate them), why a system needs to be the way it is, and also be able to communicate technical ideas to users and sponsors of your project easily.

    So, yes, learning to program is important (and you can do that easily with great tutorials like the Learn To Code Bootcamp Bundle at Lifehack Deals), but there is way more to being an awesome software developer.

    More by this author

    CM Smith

    A technologist and writer who shares advice on personal productivity, creativity and how to use technology to get things done.

    Design Is Important: How To Fail At Blogging 7 Tools to Help Keep Track of Goals and Habits Effectively 6 Unexpected Ways Journaling Every Day Will Make Your Life Better Why Getting Things Done is the Best Productivity System For You How to Beat Procrastination: 29 Ways to Beat It Once and for All To Automate or not to Automate Your Personal Productivity System

    Trending in Technology

    1 7 Tools to Help Keep Track of Goals and Habits Effectively 2 7 Clever Goal Tracker Apps to Make the Most of Your Business in 2019 3 10 Smartest Productivity Software to Improve Your Work Performance 4 18 Best Time Management Apps and Tools (2019 Updated) 5 16 Less Known Gmail Hacks That Will Super Boost Your Productivity

    Read Next

    Advertising
    Advertising
    Advertising

    Last Updated on February 15, 2019

    7 Tools to Help Keep Track of Goals and Habits Effectively

    7 Tools to Help Keep Track of Goals and Habits Effectively

    Now that 2011 is well underway and most people have fallen off the bandwagon when it comes to their New Year’s resolutions (myself included), it’s a good time to step back and take an honest look at our habits and the goals that we want to achieve.

    Something that I have learned over the past few years is that if you track something, be it your eating habits, exercise, writing time, work time, etc. you become aware of the reality of the situation. This is why most diet gurus tell you to track what you eat for a week so you have an awareness of the of how you really eat before you start your diet and exercise regimen.

    Tracking daily habits and progress towards goals is another way to see reality and create a way for you clearly review what you have accomplished over a set period of time. Tracking helps motivate you too; if I can make a change in my life and do it once a day for a period of time it makes me more apt to keep doing it.

    So, if you have some goals and habits in mind that need tracked, all you need is a tracking tool. Today we’ll look at 7 different tools to help you keep track of your habits and goals.

    Joe’s Goals

    Advertising

       

      Joe’s Goals is a web-based tool that allows users to track their habits and goals in an easy to use interface. Users can add as many goals/habits as they want and also check multiple times per day for those “extra productive days”. Something that is unique about Joe’s Goals is the way that you can keep track of negative habits such as eating out, smoking, etc. This can help you visualize the good things that you are doing as well as the negative things that you are doing in your life.

      Joe’s Goals is free with a subscription version giving you no ads and the “latest version” for $12 a year.

      Daytum

        Daytum

        is an in depth way of counting things that you do during the day and then presenting them to you in many different reports and groups. With Daytum you can add several different items to different custom categories such as work, school, home, etc. to keep track of your habits in each focus area of your life.

        Advertising

        Daytum is extremely in depth and there are a ton of settings for users to tweak. There is a free version that is pretty standard, but if you want more features and unlimited items and categories you’ll need Daytum Plus which is $4 a month.

        Excel or Numbers

          If you are the spreadsheet number cruncher type and the thought of using someone else’s idea of how you should track your habits turns you off, then creating your own Excel/Numbers/Google spreadsheet is the way to go. Not only do you have pretty much limitless ways to view, enter, and manipulate your goal and habit data, but you have complete control over your stuff and can make it private.

          What’s nice about spreadsheets is you can create reports and can customize your views in any way you see fit. Also, by using Dropbox, you can keep your tracker sheets anywhere you have a connection.

          Evernote

          Advertising

            I must admit, I am an Evernote junky, mostly because this tool is so ubiquitous. There are several ways you can implement habit/goal tracking with Evernote. You won’t be able to get nifty reports and graphs and such, but you will be able to access your goal tracking anywhere your are, be it iPhone, Android, Mac, PC, or web. With Evernote you pretty much have no excuse for not entering your daily habit and goal information as it is available anywhere.

            Evernote is free with a premium version available.

            Access or Bento

              If you like the idea of creating your own tracker via Excel or Numbers, you may be compelled to get even more creative with database tools like Access for Windows or Bento for Mac. These tools allow you to set up relational databases and even give you the option of setting up custom interfaces to interact with your data. Access is pretty powerful for personal database applications, and using it with other MS products, you can come up with some pretty awesome, in depth analysis and tracking of your habits and goals.

              Bento is extremely powerful and user friendly. Also with Bento you can get the iPhone and iPad app to keep your data anywhere you go.

              Advertising

              You can check out Access and the Office Suite here and Bento here.

              Analog Bonus: Pen and Paper

              All these digital tools are pretty nifty and have all sorts of bells and whistles, but there are some people out there that still swear by a notebook and pen. Just like using spreadsheets or personal databases, pen and paper gives you ultimate freedom and control when it comes to your set up. It also doesn’t lock you into anyone else’s idea of just how you should track your habits.

              Conclusion

              I can’t necessarily recommend which tool is the best for tracking your personal habits and goals, as all of them have their quirks. What I can do however (yes, it’s a bit of a cop-out) is tell you that the tool to use is whatever works best for you. I personally keep track of my daily habits and personal goals with a combo Evernote for input and then a Google spreadsheet for long-term tracking.

              What this all comes down to is not how or what tool you use, but finding what you are comfortable with and then getting busy with creating lasting habits and accomplishing short- and long-term goals.

              Read Next