Programming and Learning: Tale of two twins!

Programming and Learning: Tale of two twins!

Happy new Year! Its quiet sometime since I last wrote any article on LinkedIn. Finally today I got few minutes and I thought I would speak to Software Developers, their HR Consultants and their Managers and Directors. If you find it useful a post for anyone outside there people, please let me know in a comment.

Now you already know that one of my job at Hosanna Higher Technologies is an Instructor. That have given me access to different people in Programming arena: from students at university to gurus at work. I have learned a lot from these precious minds as well as my personal experience. Allow me to share briefly about the relationship between learning and a better programmer.

Programming is both art and science. As art, you need to put a lot of innovation and creativity. Now you know there is no where to learn how to do innovation. It's something we are born with. I believe anyone can be a great innovator if he can properly make use of his/her brain and mind. But then it is almost impossible to be a better innovator if you miss foundations of art. I believe you need to learn that one from somewhere: formal or informal doesn't matter!

So how do you become a great artisan? By learning the foundations that others ahead of you have discovered, train your brain to think through different kinds of exercises, learn from what others have done and finally "shut the windows" and try to come up with some "artiful" thing that actually solves a problem. That, I believe, makes a good artisan!

Art is just one side of programmer's coin. The other side is science. This is as hard and important as art thing. Here you will need to learn abc of it like data structures, algorithms, design patterns, different kinds of architecture and paradigms. Well, then you will need to pick a language or bunch of languages and then apply those stuffs into that specific language. After training yourself in various ways, and of course learn from others, you can go ahead and make solutions.

If you have noticed four things have popped up in these few sentences: Learning the foundations, Exercise what you have learned, Learn from others and Go and do something. Those are essential qualities to keep you afloat the programming arena. You stop learning, you are out-dated. You don't exercise, you become a talk-no-walk junkie. You stop learning from others, you are in for endless "journey to no-where". You won't grow an inch!

So how does this apply to these big titles I have pointed at the beginning of the post? Well, they manage developers and expect great output! Yeah, they pay them and somehow expect to get value from them. But let us face it, these people are so busy with work that they don't get time to learn, exercise and interact with other people's work. Their work schedules are so tight that when they are on internet, they are mostly looking for a "quick-fix". When they interact with someone's work is when they need "a library" or a "template": that piece of code to make me solve problem at hand!

That sounds great, unless they are slowly dying. Soon and not later, they will start delivering outdated solutions and will start asking an organization buy this library or that software because someone have to compensate for their ignorance of something that they are outdated about.

Do them a favor: Train them! Send them somewhere to learn with a little bit of leisure. A well fed cow gives a lot of milk. Give them a time for solution review. It can be once a month or more as your schedule allows. This means they will take an off from development and review and test different things that they wanted to test. It can be in-office but I suggest an outing somewhere off the office. Out of these outings always comes great ideas. They can have few hours of group discussion, personal reflection time, and of course time for fun and resting.

That will build a great team that will be highly productive. If it was too long, my point is simple: Train your staff and give them time they need to develop. So make a budget for that. If you don't have bucks for that, then don't complain that they can't deliver to your expectation! Programming and Learning are Hare and Hyena, twins in story!

Advocate Asifiwe Alinanuswe

Post Graduate Diploma in Legal Practice at Law School of Tanzania

6 年

One of the best article

Prosper Mwakitalima

Director & Co-founder at TUTUME Worldwide Ltd. Simplifying Logistics for everyone ????

6 年

This is well said. It can useful to all of us who work in creative industry!

Stefano Mtangoo

16+ toying with Software Engineering, 10+ as Entrepreneur | Christian, Husband, Father, Engineer, and Consultant.

6 年

Let's keep sharing. May be it'll help some

回复

要查看或添加评论,请登录

Stefano Mtangoo的更多文章

社区洞察

其他会员也浏览了