Welcome to the latest news from TalkIT. This issue will look at how to work better with IT. This follows on from our January newsletter on what makes a good programmer. CONTENTS A Developer’s Lot Manage Time and Tasks Accelerated Learning for Developers How About a Training Course? Other Bits
A Developer’s Lot
A developer’s job can be tough at times. There is the pressure to get things done by a deadline. Developers have to learn and work with complex and constantly changing technologies. They also have to collaborate with people who do not understand fully the issues, limitations and potential of those technologies. Those clients can be demanding and frequently change their requirements. So anything that can be done to improve our personal effectiveness is welcome
Let’s start by looking at how we organise our time. In the years I have spent training & managing developers, I have often found a lot of interest in this. I know there are lots of software tools out there to help, but I am going to consider some more basic stuff. Nothing beats writing a list. You can start each day with a list of what you want to do. You can add an estimate of how long each task will take. Then refer to the list throughout the day to remind you of what to do. It is very satisfying to cross off the things you have done. You can also have lists for the week and month. Then transfer tasks between these lists. Your daily list is the design for your day. But any involved activity can be separated in to three parts:
- Design : decide on the components, times, people …
- Implementation: build the thing
- Evaluation: what works, what needs changing
These parts are best done separately. We run in to problems if we say, attempt to design and implement at the same time. This is a response, from a Linked In group, to my question “What Makes a Good Programmer?” A good programmer thinks about code before writing code: before putting fingers to keyboard a good programmer will put pen to paper and make the mistakes there before they start to type. Allan Wenham Evaluation is best done when you have some distance from the activity. You can then asses at the activity as a whole. I think we use completely different parts of our brain for this.
- The specialisation in the function of the left and right sides of the brain
- Identifying an individual’s learning style (visual, auditory or kinaesthetic)
- Using Mind Maps to generate ideas and consolidate new information
- Enhancing memory
- Applying an individual’s multiple intelligences to learning
- Faster and more effective reading
We can use accelerated learning to develop software more effectively. For example Mind Maps are a fast and effective way designing software. They provide a visual outline of the parts of the software and show key relationships between components. Take a look at this TalkIT Accelerated Leaning course for more ideas: Accelerate Your IT Learning
How About a Training Course? Another way to be more effective is to attend a training course. Although there are a lot of ways to learn – including books and on-line resources – a recent TalkIT survey found that the majority of developers (69%) said they found attending a training course was highly or quite effective. In answer to the question: How effective have the IT courses you have attended been?
- 25% said highly effective
- 44% said quite effective
Training can be a much more effective way learning than picking up skills on the job. Take a look at TalkIT’s developer training courses: http://talk-it.biz/training/courses/ There are several situations where training is particularly helpful:
Recruiting staff TalkIT recently ran a SQL Server database course for an email hosting company. Several delegates had recently been recruited with database experience, but no SQL Server experience. The company needed capable SQL developers, as soon as possible. Upgrading technology TalkIT recently ran a course for an online travel agent. They were migrating to ASP.Net from classic ASP. The web developers had up to 10 years experience in ASP, but none in ASP.Net. This course emphasised how they could easily transition their existing skills. Starting a new project When new business requirements call for software to be developed, a course can make all the difference. TalkIT recently ran a C# course for a team just formed to work on a development project.
Can You Solve These Coding Problems? Here is a coding task. The aim is to separately design, implement, and evaluate a solution. Write a program in language of your choice that multiplies two matrices. This is how to do this: http://www.mathsisfun.com/algebra/matrix-multiplying.html The design can be done on paper with words, formula or program flow charts.
- The program will input the matrices and store these in 2-D arrays.
- The product will be found by multiplying, then summing elements in the rows and columns.
- The product will be output.
You can add your code to the end of the blog.
Other Bits TalkIT in collaboration with VBug organises monthly Geek Speak talks for techies in Bristol. The talks are aimed at developers and team leaders. In March we have a talk on developing for Windows Phones. For a description of the talks just click: http://cms.vbug.net/Regions/VBUG-Bristol.aspx We have an enhanced tutorial in MVC 4 development that you may like to work with. This includes 3 video clips to demonstrate building an application. http://talk-it.biz/tutorials/creating-asp-net-mvc-4-application/ We are also developing an in-depth MVC 4 online training course. This will be available from April. Copyright David Ringsell 25/02/14 – Photos from http://www.freeimages.co.uk/