Wish to learn a new programming language [closed] - programming-languages

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I wish to learn a new programming language but there are so many out there! So thought I'd ask here if there are any that correspond with what I wrote in this list that you might know of:
Making applications with GUI
That would preferably run on any system, preferably Windows (I run Windows 7)
That would not need a hardcore IDE and hopefully no compiling
That is not incredibly advanced (Hard syntax paired with OOP etc.)
That does not need any 'platform' or 'component' installed to work (can be opened with a click, say an .exe file or any other file type)
I already know:
HTML, JavaScript and PHP
Thanks in advance for your input.

I'd recommend Python to anyone.

You seem to have some mutually exclusive options here.
For example, no compiling and opening an .exe. An exe file is generated via compilation.

IMHO, Qt probably best suits your needs. It runs on just about everything, doesn't need an IDE (though qtcreator is a fantastic one, I suggest trying it before you choose not to use an IDE) and is easy to learn and well documented.
If you want compile-less then you'll need to use the python or other scripting language bindings too it.

I would suggest C-sharp / F-sharp combination with WPF thrown into that to get GUI's going...
It a pretty rough learning curve but the combinations are endless...
A couple things to certainly look into:
PRISM
M-V-VM ( Model , View, Viewmodel)
If you are interested in an other back-end persistancy try going into object databases, such a great new world opened up for me when I discovered all the things you can do with that... ( DB4O is my preferred one at this moment.. it has loads of info and a very active community )
It is only limited by your imagination ;)

This is one of those questions of having 10000 people going to an Ice cream shop and then choosing which flavour they want. So far I have worked with Delphi and C#, I am doing SQL, Asp.net and javascript, well, basically!
The answer should be somewhat simple. Go check out which programming language fits your needs, and is in great demand in the working world. If you want to program websites for companies, then PHP, ASP.NET and the older HTML is for you. As far as I know, flash is also coding.#
Another way to look at this question is not only the availability of the language you seek, but its future, if it will become obsolete or the coding language of the century.All coding is the same, but some are more rigorous in certain tasks (like C# and delphi are good languages to build forms applications to handle tasks for data manipulation, integration and whatnot.)
The answer to this question is to explore! What is Your flavour? Sitting in front of a desk doing CRUD operations and staring into a gui which has countless buttons and textb
oxes, but real in-depth code, or to start into a rich gui with XML based code?

I recommend HTML5+Javascript.
You can use Canvas or SVG for
graphic.
It works depending on the browser. So
any OS or system can use it.
Javascript and HTML can be edited in
any thing for example: notepad.
You can write your JS using OOP.
How to open a HTML file? just
double-click on it.
Have fun :)

Related

Atom built on Node.js isn't that a recipe for performance flaw? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
Note: This is not an attempt to bash Atom in any way. These are the questions I had and it's overall about the choice of Tech Web instead of a Native one.
This is me trying to understand the goal of it, and if it's a solid tool to use in general.
( I have Atom, and I use it sometimes - test driving - )
Why wouldn't they make it native which would be faster and solid?
Is Atom focused on entry level Web Developers? Is it supposed to be cool instead of functional?
Is it a reliable and solid tool for "real" / heavey programming (with languages like C, C++, Java, etc)?
Yes it's at its begining but why would they go with web tech (node.js) to start a product that would turn out to be slower than with native tech?
It can't even handle big files!
Why is Github advertising Atom (https://www.youtube.com/watch?v=Y7aEiVwBAdk) as a tool for programming machines (rockets and low-level programming) with Javascript!!!
And again: Is it supposed to be cool instead of functional?
making it native means you need to compile it to use it. Since one of the goals of Atom is to make a hackable (to the core) code editor, making it in javascript, css, and html allows people to use it \ changing it without compiling any code which allows a quicker flow. Since it's more of a code editor+ than an IDE, basic functionality isn't harmed so much by the performance difference.
no. It's meant for real engineers. the kind that wants to mess with the code editor they work with and tweak it to their needs. This approach allows you to create extensions a lot easier than standard IDEs and code editors.
yup. real programmers usually do real programming. It doesn't matter if you use notepad or whatever. Actually, a lot of programmers prefer the simplest text editors (and some don't). One of the reasons programmers give for that is that it keeps them sharp on all the little things that IDEs usually do for you.
Node is an exciting JavaScript language for web development that has been growing in popularity in recent years. It started out for small development projects and has since penetrated the enterprise and can be seen in large companies like Microsoft, eBay, LinkedIn, Yahoo, WalMart, Uber, Oracle, and several more. Most of them actually improved their performances since the move. Just a few examples [taken from the MEAN Machine book by Chris Sevilleja and Holly Lloyd]:
Yahoo started experimenting with Node back in 2010. At first they just used it for small things like file uploads, and now they use Node to handle nearly 2 million requests per minute. They have noted increases in speed and a simpler development process.
LinkedIn began developing the server side of their mobile app entirely with Node. They were previously using Ruby, but since the switch they have seen huge increases in performance, ranging from 2 to 10 times faster.
PayPal has recently jumped onboard and began migrating some of their Java code to Node. They began experimenting with just their Account Overview page, but once they saw a 35% speed increase and half the amount of time spent on development, they started moving all sites to Node.js.
It's just a commercial. It's suppose to pay tribute to old technology commericals like the AOL commercial from 1999 https://www.youtube.com/watch?v=1npzZu83AfU
It's supposed to be both. For a more detailed answer, read the previous bullet which answered the question the first time you asked it ;-).

How to create Flash animations / movies on Linux? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
This is more of an assignment work. I'm trying to help a friend debugging his Flash animation. Now, when I'm at his place and at his MacBook, he's using Adobe Flash to create his animation, with those timelines, the AS3 editor, etc.
Now, I want to help him while I'm at home, but I don't have a Windows or Mac computer, and I don't have a Flash license (he's got his from the school he's going to).
I know about osflash.org, but can I work the same way as he does in Flash? I need those timelines, and obviously I need to compile and preview the .swf files.
I should explain, I've never worked with Flash before, and the IDE is quite weird to me. The only way I help him, is by providing general programming skills (since AS3 is just another OO language). I was thinking of installing a cracked Flash version in a Windows VM, but that's not how I'd like to work.
Is there a better solution to this?
He's doing his work in AS3, as I mentioned.
Since you are not much familiar with the flash IDE you should be not at problem. Since the only problem with linux & flash developers is lack of decent IDE.
AS3 programs can be compiled with the flex SDK. So you simply need to download the SDK for your linux ditribution. However do note that there are no timelines in case when you develop applications with code. Instead you work with Timer events.
Flash IDE actually hides the Timer implementation in a easy usable (neat) way to provide anyone to create an application quickly.
FLA is a proprietary format for Flash CS and earlier files. No, you cannot use them with Flex compiler, because the later is an OOS software. But you can tell your friend to avoid using them. It is in fact very common to use them only to generate graphic assets, but not the code. The typical workflow is to compile SWC or SWF to use as a library and to write the code in another editor.
Anyways, some practical things:
Developing AS3 proper, you can use Intellij IDEA (some people even like it and use on other OS then Linux, to be honest, I'm not a big fan of it, but it is of the same quality as the most industry-standard level IDEs)
Your another option (which I'm using) Some good soul "ported" Flash Builder for Linux (Flash Builder is originally an Eclipse plugin developed by Adobe). It's story on Linux is fogged by a mire of inconsequential decisions. Once there was a trial version, but Adobe never released it for Linux. The trial expired, then Adobe granted continuation for the trial version. Later, they seemed to abandon the product entirely. I'm not sure of its current status, but you can find it here: https://code.google.com/p/fb4linux/
Your another option, absolutely legal, but problematic: FlashDevelop, it runs considerably well in virtualization and the devs made an effort to ensure the best they can that the virtualized version runs fine. It also runs (to an extend...) under Wine. I tried the later, but I tried it a lot time ago, it was far from being perfect, but it was workable. Here's the thread at FD forum on this: http://flashdevelop.org/community/viewtopic.php?f=9&t=7621
FDT (from Powerflashers, a commercial IDE based on Eclipse) is said to run on Linux - never tried.
What I also used: Emacs with actionscrip-mode - it is barely a syntax highlighter. While using it I added some functions to run the compiler and debugger, but they are too crappy to share them :) seriously. So I won't.
More options:
Haxe, is another language that compiles to SWF. Less well-known, but considerably more advanced and more modern language. Besides compiling to Flash does a whole bunch of other things. I've seen it used inside MonoDevelop http://haxe.org/com/ide/monodevelop (haven't used myself). Similarly, it should be possible to use it inside FDT.
Haxe mode for Emacs (I'm currently trying to improve it, but it's not there yet), hopefully, in a couple of month it will be. Here's what I've gotten for now: https://code.google.com/p/haxe-mode/
Graphics:
It seems unlikely that you can find an editor matched to Flash CS in terms of editing vector graphics for Flash, but MXMLC (Flex compiler) can fairly well compile SVG. You can thus use Inkscape to produce some non-animated graphics... but YMMV

How Linux programmers create GUI application without using IDE? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I have read some comments in some forums saying that Linux programmers usually do not use any IDE. They prefer to use Vim and Emacs to do their programming.
If I'm not mistaken, Vim and Emacs are just text editors, similar to notepad, but with syntax highlighting.
I just want to know how Linux programmers create complicated GUI application without using any IDE.
Thanks.
You can create gui just from source code (for example: http://library.gnome.org/devel/gtk-tutorial/2.17/c39.html#SEC-HELLOWORLD). Alternatively, you can use stand-alone GUI designers (for example, Glade for GTK+ and Qt Designer for Qt) to design GUIs and use them from application written in Vim or Emacs (or anything else).
You are making a big assumption - that most Linux developers are developing GUI applications.
Many developers that follow the unix philosophy create text based applications (for example, see the git, the source control management system).
When creating a GUI for Linux, some developers will use text files and some will use designers to help with it.
One way or another, the GUI is also defined in text files. These are either generated by a designer or written by a programmer. It makes little difference to the compiler.
If you really want to understand how this works, read the tutorials for any of the GUI tool kits. You write code that uses a library to build a GUI. For a great example install python and the wxPython and its demo. The demo provides runnable sample programs for every GUI widget in a great format - one tab shows the UI and the other shows the code. The GUI is created from the code, unlike some environment where you drag controls and the code is created for you.
There are of course NxM ways to do this, where N is the number of toolkits and M is the number of languages. I just pointed out that the wxPython combination has great examples. I've also done a little GTK with Pyhon and the online docs are good too. Examples can be found in other languages of course.
Emacs and Vim are IDEs--integrated development environments, which means they assemble a variety of programs related to writing programs into one place. The part you are conflating with an IDE is a component of some IDEs called a form/gui layout designer. I am not sure what Visual studio calls it. These designers programs, often integrated into an IDE like Visual Studio, allow you to visually arrange GUI elements.
However, designers help you design GUIs only for specific frameworks. In Windows, Visual Studio allows you to arrange Windows Forms in .NET. GTK, another GUI framework popular on Linux, has its own stand alone designer. Qt also has a (very nice) designer. Netbeans has a Java Swing form designer.
The key point is: all that these designers ultimately do is automatically generate some code that you could otherwise write by hand in a text editor.

What's so great about TextMate? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
Almost every developer that uses a Mac practically worships TextMate. Why? What extraordinary features does it have that other text editors and IDEs don't? I did a quick search and the only really useful feature that I found that most other editors lack is the column selection option, but I wouldn't use a certain editor just for that. What makes TextMate so amazing?
TextMate was the first app I bought when I switched to the Mac a few years ago.
The features I like most are:
bundle support
clean UI
project support
shell integration
fast for small files (fast startup time)
HTMLTidy built in
CSS and XHTML validation integrated (needs online connection)
but it also has some drawbacks:
slow for big files
lack of updates (for some time now, but TextMate 2.0 seems to be alive)
The main selling point is the ability to extend the UI using bundles, which are basically just shell scripts. It is also fairly lightweight.
I think the appeal of TextMate is that its not bloated ... its has just the right mix of text editing / IDE features, implemented in just the right way :)
A lot of editors have column selections (although in a lot of them its buried deep down). The actual fact TextMate is liked is it's bundle system, which makes some repetitive programming tasks much easier. It's not considered a replacement for languages that have IDE-s with "intellisense" support (Java, C#, etc.), but it's really useful if you want to create programs in a scripting language like ruby or python.
TextMate is very powerful and at the same time usable, intuitive, elegant and lightweight.
On the other hand e.g. the two most popular Unix editors Emacs and Vi(m) are both very powerful but IMHO(!) their usability is not up to todays standards. (I use all three of them but think TextMate is by far the best.)
I've been trying to use TextMate as a replacement for Emacs. So far I'm not sold, though I like projects, simpler/cleaner UI, and the idea that it's extensible using python, etc. (I've never mastered elisp).
Things I don't like [in comparison to Emacs]:
no ability to swap point/mark or return to previous marks.
movement keys don't automatically take you out of inline search.
tags not so great (ex: no symbols can be found in java files without classes).
completion only searches current file.
NOT OPEN SOURCE.
Okay, I still want to give it a fair shot, but mostly I'm just missing Emacs' superior functionality and feeling increasingly forgiving of its challenging UI and more willing to try to learn elisp for real. Even for projects, using emacs desktop-save in a project folder can accomplish nearly the same thing.
-taranaki
Textmate basically has all the power of <insert your favorite unix editor here> with a nice Mac OS X UI wrapped around it and a great plugin system using bundles, of which hundreds are available and most are either good or awesome.
Community support.

How many programming languages do you use at one time? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
During a normal work-day, tackling a variety of tasks, there's the potential for several programming languages to be used.
There's application work, with C#, VB.NET, C++, Java, Fortran, then there's database work with involves SQL, and then there's maintenance work involving languages like Python, Perl, PHP, or even bash scripts and similar.
Which programming languages do you use, for which task, and why?
Since this is a poll-type question, please state your main line of work, be it developing web applications or desktop applications, systems maintenance, systems administration, etc.
To make maintenance easier you want to keep the number of different programing languages to a minimum.
For me the answer is that I use 2-3 in an average project.
Currently I use three languages at work:
1. C++ for needed low level programing.
2. C# for application level programing.
3. VB.NET for some VB related functionality and code examples shipped with the application.
I've used C# and C++ in many projects and found that it covers most of the project's needs.
I am a web application developer, in the last week I've done the following:
Created Stored Procedures using T-SQL for SQL Server
Debugged Perl Script that created databases
Written C# Web-service code
Written JavaScript (Both with and without JQuery)
Debugged CSS and HTML issues in IE6 and IE7
On my personal time, I've also used the ASP.NET MVC platform and C# to write a customized Content Management System.
Our shop focuses almost exclusively on VB.NET, but you could also say that I have to work with VB and JavaScript since I do a lot of ASP.NET development.
SQL if you want to count that as a programming language as well.
For web development:
PHP-JS-SQL-{HTML}-{CSS}
Lets count this as... 3.5 languages?
Neverminding the other languages I deal with, the first number I thought of was 5, with the list having only one entry: "Javascript"... damn browsers. :)
I suppose "optimal" is measured by the fewest which allow you to create a solution which is reasonably maintainable down the line.
Probably 1/2 a day mainly switching between Ruby / plpgsql (if that counts?) and BASH.
Though sometimes I may have to debug some JavaScript.
It really depends what you are doing.
For a web developer, it would be very common to work with a client-side and a server-side language every day, such as javascript and Java.
Edit: you would use HTML and possibly XML, but these are markup languages. I'm honestly not sure what CSS would be considered, but yes, you use that also.
The fewer programming languages I'm dealing with at any given moment in time, the fewer times I find myself making really dumb syntax mistakes.
On a given day I try to limit it to 2 or 3, but in a given week it may be 5 or 6.
On a good day, one. On a bad day it's 6-7. I find myself looking up simple syntax a lot more when I'm using many at one time.
I work as a web developer so on any given day I will be writing/debugging HTML, CSS, Javascript and .Net apps. In my free time I enjoy c++ and c#. I have also been contracted to port a vb app to c# so its going to get interesting...
If I were learning a new language, I would definitely recommend C++ and C#, interesting, powerful and if you are good in c++ you can probably work in anything...
I work for a creative studio and do some freelance work. I am often switching between the following:
Actionscript 2 (mainly on old legacy projects)
Actionscript 3 (most of my day job projects)
javascript (personal projects/user scripts)
C# (getting a few projects now for WPF)
Processing (quick sketches of ideas/personal projects)
Also some markup and other "languages":
HTML/CSS
XAML
XML (didn't want to put this, but I use it a lot)
regex (does this count?)
Mostly C#, followed by XSLT/XPath, T-SQL, Javascript, VB.NET when it's forced on me, Power Shell, VBA, and HTML and CSS if you're counting those. So that's about 6-9.
I use 3 languages every days and 6 or so every weeks.
BUT I really know only 2, maybe 3 of them. When I code using the others, I'm googling every 5 minutes !
(Hey, but it works ! :)
Every day or so : VB.NET, C#, SQL/T-SQL.
Every week : HTML, XML, C,
JavaScript.
Every other weeks : Make files, batch
files.
Really known languages : C, C#,
VB.NET.
Cool question ^^
VB.NET and Javascript at work, with a healthy dose of CSS.
VB.NET, VB6, C++, Javascript, PHP, C#, 65816 ASM, and a bunch of smaller languages at home, for whatever little project I'm working on at the time.
I've been fortunate to be working with just one language for the past year: C++/CLI. And each day I'm surprised by how little of it I actually know.

Resources