Ask Slashdot: No-Install Programming At Work? 386
An anonymous reader writes "Hello! Every summer (and other holidays) the work load at my job becomes minimal. I like scripting (HTML, CSS etc.) and would like to get into programming just to tinker a bit due to curiosity. At work we are not allowed to install anything except company approved software. Is there something I can program in that has an IDE like PortableApps.com? I guess I am asking for a recommendation on both language and IDE at the same time. Again, I want to reiterate that this is to satisfy my tinkering curiosity and thus not need something great, just something more advanced than HTML/CSS."
Codeacademy (Score:4, Informative)
Codeacademy.com
Eclipse (Score:5, Informative)
it's possible to run eclipse without installing anything, just from the executable in the directory.
also, BlueJ i think you can do the same thing.
Eclipse has a built in java compiler too i believe so you don't need to install the jdk.
JavaScript (Score:5, Informative)
Your browser already supports it. Just fire up Notepad or Wordpad as your "IDE".
Here you go: (Score:5, Informative)
What about an online IDE? (Score:4, Informative)
Re:Portable Python? (Score:5, Informative)
Actually, if this is the guy's first forays into "proper programming," I'd tend to maybe steer clear of an IDE, and certainly something as complex as Eclipse. You don't really need it, and a big IDE like that just becomes one more thing to learn, i.e. one more barrier to entry. If what you want to do is write a program and get that magic feeling of watching the program run and seeing it do what it's supposed to do, then just rush on in and do that! No need to learn some IDE. IDEs are great for people who do programming every day and who have to maintain big code bases and work within a group. But if all you want to do is learn to program, I say skip it for now. Save it for when you start doing something ambitious and the tools an IDE gives you are actually useful.
Re:JavaScript (Score:5, Informative)
> could you please tell me where the language is fundamentally broken ?
I do WebGL development and for the most part enjoy the quick turn around time. (Thank god for "ShaderToy" www.iquilezles.org/apps/shadertoy/ )
While Javascript is a breath of fresh air from hard-core C/C++ work, Javascript is a piss poor programming language ...
0. typeof() is broken w.r.t. to arrays // does NOT return array, but object?!
var a = [];
console.log( typeof( a ) );
1. Variables by default can be used anywhere without being declared. Have a typo? You will most likely never catch it unless .js file
a) using an IDE
b) using the hack
"use strict";
by placing that literal string hack near the top of your
2. Stupid semicolon statement insertion.
3. ALL numbers are doubles. There are no native signed or unsigned or ints, nor floats. Doubles SUCK for performance especially when all you want & need is integer math.
4. No proper line concatenation //
i.e. var a = "....\
foo\
bar\
";
Technically one shouldn't be able to escape the new line character, but it works ... for now.
http://bclary.com/2004/11/07/#a-7.8.4 [bclary.com]
"A 'LineTerminator' character cannot appear in a string literal, even if preceded by a backslash \. The correct way to cause a line t
terminator character to be part of the string value of a string literal is to use an escape sequence such as \n or \u000A."
Haven't they learnt ANYTHING from C, Python, etc. ??
5. You have to very careful when doing (string) concatenation else you may not get what you expect.
6. No native way to include .js files inside another .js file and have a callback unless you write it yourself. i.e.
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
script.onload = callback;
head.appendChild( script );
7. The return statement is broken w.r.t whitespace. You can't have return on an empty line. // doesn't work!
i.e var foo = (function( callback ) {
return
1;
}
8. All the debuggers suck ass. Good luck get it to show anonymous functions properly!
I could go one, but for a more complete list, see
http://oreilly.com/javascript/excerpts/javascript-good-parts/awful-parts.html [oreilly.com]
Re:Uhh (Score:3, Informative)
I agree.
My first thought was holy crap! You are being paid to work what are you thinking? I am shocked no one hear besides myself (modded down to 1) brought this up.
Unless you are hired to learn new things to expand job responsibilities then you are stealing. 90% of the real world would be fired or would be laid off as it shows his boss over hired. I find this practice unethical.
Do that at home where it belongs and if things die down at work there is always something to do so you do not need to put out fired later at the worst possible time when things are busy. QA, testing, code refactoring, etc. The owners and customers need to find value in what you do and if you do not like it quit and go back to school to learn or start your own company.
Maybe I am just old fashioned but from where I have worked and what I have seen just asking this is astounding as who pays the bills?
Quite a Few Online IDEs to chose from. (Score:4, Informative)
I take your question to mean that you want to program but aren't allowed to add anything to your work machine, including binary files that don't require an installer to run. That's typically how I've seen that sort of rule interpreted.
You mentioned an interest in HTML/CSS and presumably javascript.
You might enjoy JSFiddle [jsfiddle.net]
If you would like to try other languages or other approaches, there are online IDEs for that too:
ShiftEdit - Online IDE | ShiftEdit [http]
ECCO -Web-based IDE [sourceforge.net]
Cloud IDE [cloud-ide.com]
WIODE [wiode.org]
CodeRun [coderun.com]
Cloud9 IDE [webresourcesdepot.com]
http://www.codeanywhere.net [codeanywhere.net]
And some more lists and reviews:
http://speckyboy.com/2010/07/25/the-most-powerful-and-feature-rich-web-based-code-editors-ides/ [speckyboy.com]
Another option would be to look at some of the free shell account vendors online, but you seemed mostly interested in GUI IDEs so that might not be your thing.
If you want a fun, short read about why you might want to reconsider the command line, check out In the Beginning Was the Command Line [cryptonomicon.com] by Neal Stephenson
Re:Uhh (Score:5, Informative)
Unless you are hired to learn new things to expand job responsibilities then you are stealing. 90% of the real world would be fired or would be laid off as it shows his boss over hired. I find this practice unethical.
Stealing? Chill on the hyperbole. Very few jobs involve an even 24/7/365 workload; many have seasonal variations, some have monthly variations, some have huge daily swings. And although you can hire and fire untrained salesdrones and telemarketers on a whim, you don't just get rid of 30% of your accounting staff because the 2nd week of the fiscal month doesn't have much to do.
The average office worker spends their down time playing Solitaire, or if allowed to go online, reading Facebook or sports news. I wish some of my coworkers would do something like learn a new skill instead. That said, I have nothing against Solitaire, but as long as you have people on the clock but no work for them to do, why not encourage them to do something at least tangentially productive?
This guy wants to learn to program while staying within the company rules - He didn't ask how to root his machine to install a compiler, he didn't ask how to hide his activity, he just asked for a no-install coding playground.
We freed the slaves in the late 1800s. Stop acting like one.