Skip to main content

Should I learn programming? Which programming language I should learn?

This post is for those, who are not familiar with any programming language and confused whether they should learn one or not?

Simple answer for this question is big YES! You will find detailed answer at the end of the page.

Now, another question arise here, Which programming language I should learn?

Choosing one programming language has become very difficult. Many options are available and at one glance all looks cool. But I myself rounded up on the Python.
Now why? Why not C, C#, C++, Ruby and list goes on.

Python is very easy to learn. This is the biggest advantage of it. And it is working in favor of them. You can find detailed data about various programming language users, it’s ranking and all here.


What can I do with python?

I have renamed multiple files using it, merged many pdfs and moved files to specific folders based on defined criteria. I even downloaded multiple files, (92 to be specific) which were on different pages on the same website using python. All it took, 1 month to learn this. Python is also used to create websites, doing scientific calculations and many more.

Python is general purpose language and many tools are available for it.

Tools for programming? Yes, because many tasks requires serious programming and need too much 
effort. But, there are thousands of developers, and many of them are working make things simple. So, you will find already written programs which will make your stuff easy and you can solve your problem with few lines of code.

Example: Working with pdf. PDF are very difficult to work with. But you can install PyPDF2 within python and you can edit and merge pdf, you can find data in specific format or which fulfil specific criteria, that too in few lines of code. Without using a licenced adobe PDF maker or other paid software.

This is true for web scrapping as well. You can find data of files and download those automatically using python. I create a script which can, do repetitive clicking and input data. So, if I have to do a task which requires continuous clicking, or data input in specific field, all I have to do is, just give these information, like where to click and when and what to write in text box. Program will run this cycle continuously unit I stop it or for specified time.

Same way you can work with excel files and other files. Many program use same syntax, used by python, in their API. You will be able write script for those programs easier after learning python.
Many applications, comes with their own API/macro but learning it for all software is not easy. Python works with all major file formats directly or indirectly.

You can download python from here.

To learn, you will find hundreds of resources free of charge. I will suggest you to find a course on udemy and buy a book for future reference/ I will suggest this book.



Now, back to the answer of first question.
Most of us, use different application to perform various tasks. Sometimes these apps, makes it very 
easy for us to do cumbersome tasks. But still you will find something missing in each application.
Problems can be unique and you may not find a solution or a ‘Free solution’ for your problem. Programming can solve it. As all software/Applications we are using are programmed in one or another language. Learning one language will also make you slightly more comfortable with all other programming languages. Starting up with an easy language is good choice.

Good Luck ! 

Comments

Popular posts from this blog

Creating Drawing Template/format in Creo

Drawing template is very important, as it is not convenient to enter all data manually, every time we create 2D Drawing for our model. Creo gives a separate option named 'Format' to create drawing formats/templates. There are many ways you can create format. Most tutorials shows, use of table to create borderlines in format. But, table make it very difficult to select and edit annotations and even other table. But, there's another way to create format, using sketch and It won't annoy you. Here is simple tutorial created by me, While creating drawings, there are many things, we have to write manually. Like, drawing date, version no., revision no., scale, drawing name, and many other. But, in creo, we can get this automatically in our drawing. You can create your custom templates as per your requirement and use "Text Parameters" to get all this things automatically. To, create a custom template, select "Format" option in new file window. You c...

How to make mapkeys in creo?

What is MapKey? Creo Parametric allows us to create our own shortcut keys. These are not limited to only one command, but you can even define only one shortcut for series of commands. I use MapKeys to orient model in defined view, turn on/off visibility of Planes, Axis and points and to export model at predefined location in different formats with just one keystroke. It saves lots of time. You can also create temporary mapkeys, for you current session. I create temporary Mapkeys to directly open specific user defined feature, whenever I want to apply that feature at multiple location and use of pattern tool is not possible. How to define MapKeys? You can create Mapkeys by two ways. I will show you easy way for that. Go to " File > Option > Environment > Mapkeys "  New    : To define a new MapKey.  Edit    : Edit already defined MapKey.   Run     : Run MapKey from this dialogue box directly...

How to Learn Finite Element Analysis?

Finite Element Analysis is being used in many areas. Depending on your field you can learn specific domains of it. Mechanical engineer generally deals with stress analysis in solid parts, Fluid flows, thermal stresses, buckling etc. Mainly mechanical engineers learn Stress analysis, thermal analysis or CFD. Knowledge of any of this will help you and one should gain expertise in any one of them. Basic knowledge of other use can help but still expertise in any one of them is essential for profession. Question is, how one can learn FEA from scratch own his/her own? Many answers are there on various blogs and are useful. I am writing here my own experience and understanding. Generally FEA solve engineering problems mathematically. Various methods are there to solve this problems. To get basic idea about FEA you can prefer my post.  Click here ! Now, learning requires theoretical knowledge about the analysis you are performing. As I have mentioned in my previous post, many...