Welcome, Guest: Register On Nairaland / LOGIN! / Trending / Recent / New
Stats: 3,150,823 members, 7,810,160 topics. Date: Friday, 26 April 2024 at 10:07 PM

Programming: An Appetising Insight For Beginners - Programming - Nairaland

Nairaland Forum / Science/Technology / Programming / Programming: An Appetising Insight For Beginners (1554 Views)

Java Tutorial For Beginners / For Beginners: Learn How To Create A Simple Android Native App / Programming Challenge For Beginners N20000 (2) (3) (4)

(1) (Reply) (Go Down)

Programming: An Appetising Insight For Beginners by femu(m): 12:29am On Sep 03, 2009
This article is directed at those who want to begin a promising career in Programming and Software Development. It is my belief that after carefully going through this write-up you will be better informed at selecting the right language to start achieving with.

Software is as diverse as most fields and keeps diversifying at an even faster rate. It also has the shortest shelf-life in terms of skill relevance. What I mean is that the fact that that Java Programmers or Windows is hot today doesn’t mean its going to be relevant in 5yrs time, this is unlike so many other professions where what you learnt in University will see you eating fat throughout the rest of your life.

In Software development you have to learn and keep learning rapidly to stay on top of your game.

As we all know a Programming language consists of a vocabulary and set of grammatical rules for instructing a computer to perform specific tasks. Programming languages can be used to create programs that control the behaviour of a machine, to express algorithms precisely, or as a mode of human communication. What I intend to do in this article is to quickly review some popular software fields. These are just broad classifications, they are not necessarily that distinct, the fact is that in the art of Software development features of some applications encompass multiple skill sets. It is also impossible to cover all aspects/categories as innovations continue to arise by the day.

Away with the stories, lets now get down to profiling these fields as well as reviewing the Programming languages that make it possible to develop applications on them.


  1.  WEB APPLICATION DEVELOPMENT

A web application is a software that is accessed over the Internet/Intranet using a web browser.

If you want to develop web applications like Facebook, Yahoo Mail, Wikipedia and Google this is a field you cannot ignore.

Listed below are the languages you need to learn in-order to be employable, independent and indispensable.

Learn all of these

[list]
[li]HTML[/li]

[li]XML[/li]

[li]CSS[/li]

[li]JavaScript[/li]

[li]SQL[/li]

[li]any Server-Side programming language(used to create dynamic websites that interface with a database).It runs on the server and not the browsers machine
[/li]

[/list]
Examples of Server Side languages are:

Learn any one of these

[list]
[li]PHP[/li]

[li]ASP/ASP.NET[/li]

[li]JSP(JavaServer Pages) [/li]

[li]PERL[/li]

[li]Python[/li]

[li]ColdFusion Markup Language[/li]

[li]Ruby
[/li]

[/list]
The Server Side language you choose to adopt for the creation of a web application must be available or supported by your Web Host. The most supported or popular languages in this regard are PHP and ASP.



  2. MOBILE APPLICATION DEVELOPMENT

This section takes a look at popular mobile phone Platforms/Operating Systems and the programming languages you need to develop exciting applications on them.



Operating System: Windows Mobile OS
Programming Language: Visual Basic, Visual C++, C#, Java, JavaFX

Operating System: Palm webOS
Programming Language: HTML, CSS, and JavaScript

Operating System: BlackBerry OS
Programming Language: Java

Operating System: iPhone OS
Programming Language: Objective-C , Ruby, Python, C/C++, JavaScript/C#

Operating System: Symbian OS(Nokia)
Programming Language: Java, JavaFX, C/C++, Python, Flash Lite, Ruby, .NET,

Operating System: Google Android OS
Programming Language: Java



Most Phones allow you to use a variety of languages to create applications on them. for example Symbian allows you to use anyone of the 7 languages listed in the above. The same concept is applicable to Windows Mobile and iPhone.

If you check the August 2009 smartphone statistics from Gartner(http://www.gartner.com/it/page.jsp?id=1126812) it’s easily seen that Symbian is currently the most popular platform, followed by BlackBerry and then iPhone. Also obvious is the fact that Symbian is losing its market share to BlackBerry and iPhone which are catching up quickly.

This should tell you one or two things about which platform you intend to target.




  3.  WIDGET/GADGET DEVELOPMENT

Widgets are small, smart, cool looking applications that do useful things. like Clock, Weather, News, Calculator e.t.c. Widgets usually serve a single purpose or perform a particular function.





Typical Widget Engines/Platforms:

A widget engine is a software service available to users for running and displaying applets on a graphical user interface, such as that of the desktop.

There are 4 types of widget engines, which are Desktop widgets, Mobile widgets, TV set widgets and Web widgets(i.e. FaceBook, WordPress). However I will only elaborate on Desktop Widgets below.

Examples of Desktop widget engines include:


Engine: Opera Widgets
Programming Language: HTML, CSS, JavaScript, SVG, AJAX.
Developer Tools: The Opera Widgets SDK, Widget Emulator, Opera Dragonfly, DOM Inspector.

Engine: Yahoo! Widgets
Programming Language: XML, JavaScript
Developer Tools: Konfabulator SDK

Engine: Windows Vista Sidebar Gadgets
Programming Language: HTML, CSS, JavaScript
Developer Tools: Any good text editor, consult MSDN

Engine: Google Desktop Gadgets
Programming Language: XML, JavaScript, C#, VB.NET, C or C++
Developer Tools: Google Desktop SDK



In addition to the tools listed above the following tools/resources are also very useful for widget development:

Mozilla Firefox Web browser, Netbeans IDE, Adobe Dreamweaver, Firebug, W3c schools.

It can be interpreted from the table that widgets/gadgets are easy to create, particularly if you are already familiar with HTML and scripting languages




  4.  EMBEDDED SYSTEM DEVELOPMENT

According to wikipedia an embedded system is a computer system designed to perform one or a few dedicated functions, often with real-time computing constraints. It also refers to any electronic system that uses a CPU chip, but that is not a general-purpose workstation, desktop or laptop computer. Embedded systems generally use microprocessors, or sometimes custom-designed chips or both.

It is used in various applications such as vehicles, POS terminals, Game consoles, Satellite Decoders, Medical equipment, machine tools e.t.c





Programming Language: Assembly, C/C++, B#, Hex Files e.t.c

I will be writing about developing smart POS applications soon, so watch-out.






  5.  MOZILLA FIREFOX TOOLBAR/EXTENSIONS

I have already covered this subject, follow this link.http://tekxtremeonline.net/babbles/2009/08/13/developing-viral-applications-using-firefox/#more-28



If you care about popularity of programming languages, Tiobe Software(http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html) and langpop(http://langpop.com/) try to provide relevant rankings.
The most popular language is not necessarily the best or most relevant, your interests, which should include: requirements of the task at hand and industry relevance should always determine the choice.

The next step for you is to get a listening mentor or peer to guide and motivate you.
Re: Programming: An Appetising Insight For Beginners by NSoul: 1:40am On Sep 03, 2009
Wasn't that already on your site ?! :hmm:
Re: Programming: An Appetising Insight For Beginners by jacob05(m): 11:15am On Sep 03, 2009
See dis somewhere before.COPY&PASTE {lol}
Re: Programming: An Appetising Insight For Beginners by NSoul: 12:02pm On Sep 03, 2009
It's a good post-note,. but i think someone already referred to it in another post.
I think one of the important things is the person's interest area and the time required to learn those different stuff listed above. Reading/practice material/softwares aren't the problem anymore - "time management" seems a more determining factor than most.
Would be nice if Seun could sub-section the 'Programming Forum' to accomodate these different areas of programming and software development. - would make it logically easier for interested posters and newbies.
Re: Programming: An Appetising Insight For Beginners by Seun(m): 2:43pm On Sep 03, 2009
Hmmm, interesting article.
Re: Programming: An Appetising Insight For Beginners by veetubes: 3:11pm On Sep 03, 2009
Thanks seun
Re: Programming: An Appetising Insight For Beginners by NSoul: 5:10pm On Sep 03, 2009
yes, quite interesting an article.
Femi, maybe you could come give it as a seminar at my university. Hmm, Oh wait !!, we're still on strike - meh, i guess it won't be possible,
Re: Programming: An Appetising Insight For Beginners by femu(m): 10:47pm On Sep 03, 2009
Sure the article had been on my blog all along, the point is to share with all Nairalanders particularly beginners.
Re: Programming: An Appetising Insight For Beginners by marshal007: 12:00am On Sep 04, 2009
Hello femu,

This is a beautiful article. It will certainly be of assistance to beginners.

Keep up the good work.

marshal007
Re: Programming: An Appetising Insight For Beginners by Irem(m): 12:29am On Sep 04, 2009
this is tight were did you download the content smiley
Re: Programming: An Appetising Insight For Beginners by NSoul: 8:44am On Sep 04, 2009
I think we should make his post a 'sticky' for the NL's Programming section. So that newbies can read that as they passby. At the same time, the Programming section could be subdivded into , maybe a few of those areas -highlighted in Mr. Femi's post- it would go a long way to aid easy navigation and improve post-visiblity.
Re: Programming: An Appetising Insight For Beginners by mizbelle: 12:54pm On Sep 04, 2009
Got it ciao grin
Re: Programming: An Appetising Insight For Beginners by Afam(m): 5:46pm On Sep 04, 2009
mizbelle:

femi send back my money !!!!!

What's this? Is he with your money?
Re: Programming: An Appetising Insight For Beginners by codeaid: 11:14pm On Sep 04, 2009
This is a cool post i never knew what Widgets were.will come here more often
Re: Programming: An Appetising Insight For Beginners by meekas(m): 12:46pm On Sep 11, 2009
This is good, atleast now i know what really want. Thanks wink
Re: Programming: An Appetising Insight For Beginners by aquastar(m): 7:04pm On Sep 23, 2009
Good job, funny you dint mention the most obvious, desktop application (like media player, word proccessors, etc) development, and enterprise development, am doing that for you now, lol,

You need to learn,

Programming language
- Java
- VB.NET
- C#.NET
- C++
- Python
- Ruby

Database
- SQL (a must!) and a under any of the ff brands
ORACLE
MySQL
PostgreSQL
MS Access etc
Re: Programming: An Appetising Insight For Beginners by femu(m): 1:29am On Sep 24, 2009
@aquastar

Very true.Nice one
Re: Programming: An Appetising Insight For Beginners by ryte: 9:21am On Sep 29, 2009
evidently with this list from the article,w3schools.com is the place to be for beginners.

nice post.

(1) (Reply)

PHP Or Javascript / Learn How To Build Modern UI With Java (desktop App) / Buy Cheap .COM.NG Domain Name ₦499 Only Using Promo Code

(Go Up)

Sections: politics (1) business autos (1) jobs (1) career education (1) romance computers phones travel sports fashion health
religion celebs tv-movies music-radio literature webmasters programming techmarket

Links: (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

Nairaland - Copyright © 2005 - 2024 Oluwaseun Osewa. All rights reserved. See How To Advertise. 41
Disclaimer: Every Nairaland member is solely responsible for anything that he/she posts or uploads on Nairaland.