Tuesday, March 5, 2013

Wise Applicative Learning

I'm seeing quite a change nowadays, a new form of learning. The concept of applicative learning, where people, rather than referring to books and sources, tend to dive into code straight and analyse the outcomes. A very practical and sensible approach, but let us be honest. In order to be "applicative" or applying knowledge, one is forgetting the way of learning things properly leading to haphazard situations like improper syntax, confusions or misunderstanding in computing concepts and what not to define yourself, a "bad programmer".  And thus, time to get down on some real areas of concern to better ourselves:

Design an idea and not apps

         To learn about a technology know-how, we begin with our old learning techniques of developing "basic" apps. Let us be truthful, such apps are poor in design, scalability and reliability. Thinking of showcasing them to display your technical skills is quite funny to propose.

        App building is fine, no complaints about it. You might tend to see how much you have learned in the code that you write or copy-paste from stackoverflow.com (The most referred site for technical issues). But the fact is, it isn't contributing anything to the idea! Technology serves only as a means to achieve ideas into reality and not creating them. If you have the wisdom of reverse engineering, designing ideas based on the technology you come across, then you have a way out. The more solid (er.. bigger) idea, the more technical exposure it needs. Hence, more learning and more lines on your resume. You'll find a technology that would suffice your idea needs else you'll find creating a new one yourself. Ask peers for help, Google for it. There's always a lame idiot who will post such in no time. Do freelancing, it helps a ton to build up what you need, as a plus.

Utility Automation is useless until it serves a purpose

        Scripting is catching up very fast these days, Python and Ruby to be specific. Tons of libraries emerge out thereby making the developer to be alert to newer developments and shunning old primitive coding. As long as that script is helping you out in cutting down your work, cool! But scripting for the sake of it (think of learning here) is an utter waste of your own precious time. You tend to screw up on the way you programmed earlier as these languages make your life easier. And then there's the transition time to switch. Not only are you wasting time, you're unnecessarily extending the project deadline too!

Focus on a single technology than being a jack

        You might be a bit paranoid of not keeping up with all that Twitter follow-list or the people in Reddit that inspire you to know a ton of things in technology but I'd advise you one single thing, "Utter Crap." Try to inspect why are you following that tech topic or a person well versed in that field. Are you developing something in the same field that he is contributing? Do you have anything extra to learn? Have something to contribute in that project? Well, then go ahead. Otherwise, it is dumb to sit and check everything and know nothing in the end. You just end up as a joker than a jack or heck, even a master.

Tech Entrepreneurs are sick

        Yes. For some reasons. Those geeks have done implementations of their ideas to make money(read Business) and are in the market to sell it at an unimaginable amount. Don't get too much inspired by that. It's just media hype like the JEE-CAT exams hooplah. It doesn't serve the purpose of learning. If you really want to look up to them then look at their ideas rather, than how many dollars he minted from poor investors. That should give you a way of thinking in-line with market needs. You'll find some really good ideas out there in the market.

Read Code, not documentation

         Documentation is for absolute newbies. I've never used it as seriously as I'm being advised upon. It's all about code, code and pure code. Read code. Yes, read it! Just like you're reading this post. Understand. Think of the way things have been put in place, see which algorithms and design patterns are available in those little chunks of magic. See how you can tune it in your version. How can you format. How can you make others understand your own code via block commenting. How to use lines as simple unit test cases. Such practicality can never come from tutorials.

And for Christ's sake, get into building that code than believing it's author blindly. Use an emulator, Raspberry Pi or a physical device but please, flash that bloody code and get things started. People like to see something than sit and gossip, leading to nothing at all.

And if you really want to learn something from books, pick up any topic in Mathematics or Computing conceptual books. Even Fiction will do wonders.

Cheers!

4 comments:

Eric Stalker said...

Really great post, Thank you for sharing this knowledge. Excellently written article, if only all bloggers offered the same level of content as you, the internet would be a much better place. Please keep it up.
Best regards
Eric Stalker
Moscow mule copper mug

Unknown said...

Very great post. I simply stumbled upon your blog and wanted to say that I have really enjoyed browsing your weblog posts. After all I’ll be subscribing on your feed and I am hoping you write again very soon! I would love to hear from you, keep posting wonderful posts with us. Thanks for sharing it with us.
Best regards
tree stump removal erie pa

App Development Company Delhi said...

Very informative, keep posting such sensible articles, it extremely helps to grasp regarding things.

Unknown said...

Very informative post about how to learn new technology. i am always read that type of blogs and implement on my business Car towing service. It is a best car towing company. Thanks for sharing.