Showing posts with label new programming language. Show all posts
Showing posts with label new programming language. Show all posts

Saturday, June 7, 2008

Which "programming language" I have been dealing with for these days ? (Winter of 2008)

If you're interested in learning new technologies on programming languages and the global development environment you have to be fresh and robust.

Nowadays, i have fully concentrated my leisure time on learning new
programming languages that run the web. I was always asked "Which programming language is the best to learn?" by my friends and co-workers, i generally answer this kind of question like that: " If you only know one, then your in serious trouble" :)

This got me thinking on what programming languages should a programmer know to maximize his talent and marketability. Below is the top five languages that every programmer should know:


Ruby on Rails

Why you should learn it:
Cause it is the future. If you want to build a website writing only 8 lines of code Ruby on Rails(RoR) is the language for you. There has always been talk of Object Oriented Programming(OOP) and Ruby on Rails is OOP in its purest form.
Why it is not my first choice: Cause it is still in infancy and it does not have a debugger or a true IDE. Also its has a STEEP learning curve and its hard to understand how each component is put together, but all in all, it is the newest, most innovative one and very interesting with pure futures.
Resources: Top 12 Ruby on Rails Tutorials

Tuesday, February 5, 2008

A Summary of an Experience From a developer expert in 10 different programming languages! = Mhtare


This post is the short guide of the
Prashant N Mhatre who supports teams about stock markets and in some bugs about database management systems as an advisor. I hope it would be very helpfull for new programming language learners..


"Since I’ve working knowledge of a bunch of programming languages but job demands to learn a new language frequently in a short time. Instead of reading hundreds manual/book pages, I quickly read 10-15 pages of tutorial or primer. (As you know google is the best search engine to look for such stuff). I keep printed copy of the language syntax reference card handy. (There are many reference cards available over internet. Type in ’language to learn’ + ’reference card’ in google.)

First of all, get familiar with Compiler, compiler option, editor shortcuts or integrated development environment (IDE). Start with a simple ’Hello World’ program. Compile it. Use basic functionalities of debugger like setting break points, printing variable values, moving to the next or specific position, stopping debugger etc.

To grasp basics of a new language quickly, here are the exercises I use. Remember some programs may not good for beginners.

(1) Display series of numbers (1,2,3,4, 5....etc) in an infinite loop. The program should quit if someone hits a specific key (Say ESCAPE key).

(2) Fibonacci series, swapping two variables, finding maximum/minimum among a list of numbers.

(3) Accepting series of numbers, strings from keyboard and sorting them ascending, descending order.

(4) Reynolds number is calculated using formula (D*v*rho)/mu Where D = Diameter, V= velocity, rho = density mu = viscosity Write a program that will accept all values in appropriate units (Don’t worry about unit conversion) If number is <>

(5) Modify the above program such that it will ask for ’Do you want to calculate again (y/n), if you say ’y’, it’ll again ask the parameters. If ’n’, it’ll exit. (Do while loop)

While running the program give value mu = 0. See what happens. Does it give ’DIVIDE BY ZERO’ error? Does it give ’Segmentation fault..core dump?’. How to handle this situation. Is there something built in the language itself? (Exception Handling)

(6) Scientific calculator supporting addition, subtraction, multiplication, division, square-root, square, cube, sin, cos, tan, Factorial, inverse, modulus

(7) Printing output in different formats (say rounding up to 5 decimal places, truncating after 4 decimal places, padding zeros to the right and left, right and left justification)(Input output operations)

(8) Open a text file and convert it into HTML file. (File operations/Strings)

(9) Time and Date : Get system time and convert it in different formats ’DD-MON-YYYY’, ’mm-dd-yyyy’, ’dd/mm/yy’ etc.

(10) Create files with date and time stamp appended to the name

(11) Input is HTML table, Remove all tags and put data in a comma/tab separated file.

(12) Extract uppercase words from a file, extract unique words

(13) Implement word wrapping feature (Observe how word wrap works in windows ’notepad’)

(14) Adding/removing items in the beginning, middle and end of the array.

(15) Are these features supported by your language: Operator overloading, virtual functions, references, pointers etc.

Is there something called ’namespace / package / module’ supported by your language? (Name mangling)"

Goodluck everybody, email me for any problems rarely..