As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am a Robotics engineer and I have just finished my MSc.
I see that a lot of companies that are developing robotics solutions and automations are demanding more and more that the engineers that they are asking to hire, to be able to program. But besides Matlab which is the obvious what would be a good programming language to learn?
And by "good", I mean a language that is heavily used in industrial programming. (Industrial robots, cars and avionics, welding and painting robots and mostly automations)
Thanks in advance.
Plain ol' C is used quite a bit in embedded systems (it's what I used when I worked with a Z-80 based industrial controller back in the late 90s). C++ and Java (shocking, I know) as well. Ada is used in a few niche areas (avionics, space systems). If you're not familiar with any programming languages, C might be a good place to start and would make learning some of the others (like C++ and Java) a bit easier.
In my experience, C and C++ are widely used in research and industry. They're fast, and there are good libraries available for everything from Computer Vision to Linear Algebra.
Industrial robotics is low level, you're looking at C. Although it's quite a plunge. Maybe think about stopping off at Python first.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I always get fascinated by 8 bit music, game play and sprites includes with NES games how to they program this ? was there an sdk ?
Back in the days of the NES, there was no programming language that compiled fast enough to run a good game that pushed the NES to its absolute limits. (It's a combination of the NES not having a strong enough CPU and compilers not being as good back then). Programmers had to write NES games using the same bytecode - set of instructions - that the NES used. Even C is high level compared to this assembly programming.
Here is a great resource from someone who created a NES game in modern times:
The Making of: ROM City Rampage (Retro City Rampage) http://www.youtube.com/watch?v=Hvx4xXhZMrU
Usually, they're written in C - what a surprise (no).
I hereby demand you not to just jump into NES game development if you don't even have the ability to google which language(s) can be used to program it. You need to learn programming, learn C well (because if you don't, you'll have a hard time figuring out basic language-related problems in parallel with the NES API itself), etc. Making games is not child's play, it requires a lot of learning.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
The Google tells me there are several parsec-like libraries for OCaml: Batteries' ParserCo, Planck, Mparser, PCL, and ocaml-parsec. My problem is knowing which one to choose. Can someone give me some feedback concerning stability, active maintenance, quality of documentation, etc?
I have a vague idea of how ParserCo, Planck and PCL look like, and I would start from Planck, expecting to find some rough edges and evolve the library a bit myself over use. None of them are really actively documented, but Planck got some "serious" test cases (parsing the OCaml grammar itself) and the developer, Jun Furuse, is reactive may be interested in getting it upto shape.
That said, parsing combinator libraries are not that popular in the OCaml world. We still quite actively use parser generators. If you don't have strong opinions either way, I recommend that you have a try at Menhir, that is quite polished and nice to use (and also actively maintained).
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I want to know the answer to this question from a technical point of view,
Is COBOL still worth leaning?
What I mean is this: there are some languages you can learn to become a better programmer, for example leaning the assembler can help to understand how a computer work, or learning a functional language when you know an OOP language can teach you to look at programming from another point of view, another way of thinking. Does COBOL have such an advantage?
Learning COBOL is just about the money...
COBOL is actively used in big financial or policy cooperations which have their system from the 80ths and wont want to change it.
In order to keep their system running and updated they need cobol programmers. But today a lot of these programmers are retiring and a lot are bought back to their jobs while doubling their salary.
COBOL isn't pretty or much fun but you can earn some money with it.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I read its documentation and it seems quite awesome. But I never heard of any application developed using it.
What are the main advantages and disadvantage of Vala?
(IMO)
advantages:
No garbage collector!
generated programs are written in C which should boost performance and require less resources than other scripting languages (python) or managed code (Mono).
Provide easy to use API to a huge variety of useful libraries available in Linux written mostly in C.
Provide a C#-like syntax which is very popular and by doing so attract new developers to OSS programming.
Bring (some level of) OOP syntactic sugar into the world of C but easier to use than C++.
disadvantage:
No garbage collector!
Generated program should be recompiled for each architecture.
It's a young language. Language specifications and API change constantly. Maintaining a big project might require extra attention.
Debugging is possible but a bit tricky.
No stable IDE and tools yet. Valide crashes a lot and vtg too.
Language object model is based on glib/gobject which seem to be limited. Dova is being developed to explore an alternative path but will not be compatible with gobjects.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I need a good stemming algorithm for a project I'm working on. It was suggested that I look at the Porter Stemmer. When I checked out the page on the Porter stemmer I found that it is deprecated now in favor of the "Snowball" stemmer.
I need a good stemmer, but I can't really spend significant time implementing (or optimizing) my own. What is the best "off the shelf", freely available stemmer? Are there any non-free stemmers available for a reasonable price? Or, is the Snowball stemmer my best bet?
The Porter2 stemmer is the one I've decided to go with. It seemed the porter stemmer was the standard, but when I found the page by the author he recommended the "Snowball (Porter2)" stemmer. There is a C port link on this page.
It really depends on how you're planning to apply it. The Natural Language Toolkit (http://nltk.sourceforge.net) has a number of stemmers implemented in it that should be able to handle most applications. I prefer the Morphy stemmer.
Of course, it's available in Python, so if you're working with another language, you can always look through the code to glean the algorithm and transfer it to your language of choice. Python is highly readable.