Ask Slashdot: No-Install Programming At Work?
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.com
How about you tinker on your own time before IT finds out and your ass gets fired?
You don't say much about language preference, but would Portable Python fill the bill? I know you asked for an IDE as well, and there might be options for that -- or really any text editor will do -- but this might be a place to start.
Breakfast served all day!
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.
Or you could learn to be more creative in justifying your learning to managers.
Your browser already supports it. Just fire up Notepad or Wordpad as your "IDE".
Use a web-based (GoToMyPc.com?) or pre-installed remote administration app (Windows Remote Desktop? maybe VNC?) - or install RealVNC and use it's web app. Then control your home PC and run whatever IDE and language you prefer. I'd recommend Visual Studio Express and C# or C/C++, but that's just personal preference.
-Bill
Buy a laptop and install LAMP
If you don't have a system of your own, such as a computer at home with an always-on connection, just get a free amazon web services instance and work there. Use Putty, or any of the other free portable SSH options to connect to it. If you get one with a X-windows system, you can even run graphical programs, such as the Eclipse IDE, on the remote system, and display them on your local desktop.
http://ideone.com/
Back in school, I put my stuff on a small USB flash drive (at first a 256MB, later a 4GB - both cost about $20 when I got them). For me, it was CodeBlocks, because my personal coding project was in C++, but I imagine you can do the same with nearly any open-source IDE and compiler/interpreter.
...should do the trick.
You can do wonders with html5/js
I don't know how much debugging type stuff you want to do, but you might enjoy using a web-based IDE like IDE One. You can use any language you want, and if I were you, I'd type my code in a text editor that allows for syntax highlighting, like Notepad++, which can be run without an install.
http://c9.io/
Eclipse (eclipse.org) is no-install, just drop it into a directory and run it. Java is a reasonably widespread run-time environment, though as a language, it may not fit the bill for "tinkering." Eclipse supports other languages, too. If you're looking for a lightweight web container, try Jetty. No installation required, and you can run your own J2EE application (again, if that's "tinkering"). But yes, on your own dime is probably good advice. Look for ways to improve your value to the company. Start with the traditional: learn to do your boss's job (with her/his knowledge, of course).
If your company doesn't want you to install unauthorized software, they probably don't want you to run unauthorized software either. This is doubly true since you are going to want to run the software you developed. So I would suggest a web based alternative, or to SSH into a remote host (you can use a java based SSH client).
I would advise finding out which language you want to program first, then asking for the options available since there are a lot of options available.
If you're just interested in learning basic programming skills, JavaScript is also a good starting point and would probably work well with your existing development tools.
Problem solved.
"This post is an artistic work of fiction and falsehood. Only a fool would take anything posted here as fact."
There's always the Tiny C Compiler, a 280K zip file containing a C compiler, and all the headers for the standard library and Windows API. No installation needed for that.
General Interface is an industry grade Ajax toolkit designed to be a replacement/alternative in Java or Flex Client situations. It comes with an IDE built with its own components - think Ajax equivalent of Eclipse - which is basically a zipped HTML page with some subdirectories and stuff abused to be a full blow coding enviroment. It runs in FF or IE, loads tons of XML, JSON, JS and CSS stuff out of the subdirectories and behaves just like you'd expect an IDE to behave.
If you want to see what's possible with JS/Ajax if you go to the extreme, this is your ticket. One stop zero fuss coding fun without even running an additional binary aside from FF.
Enjoy.
My 2 cents.
We suffer more in our imagination than in reality. - Seneca
It would help to know what type of operating system you're using (Windows/OSX/Linux). If you're asking this question at all then I'll assume you're using Windows; otherwise a 'C' compiler would most likely already be available to you to tinker with.
Download Cygwin and the package for your desired language and put it on a pen drive. From there you can program in pretty much anything. This includes C, C++, ObjC, PHP, Python, Perl, Ada, Fortran, D, Java.. you'll also have access to great tools in addition to your language of choice such as Git, SVN, Make, Bash.. etc. etc.
For actually writing code there is nano, mined, emacs, vi.. But if you want something a little more friendly you can opt for putting Notepad++ or Programmer's Notepad on your portable drive as well. Other uses have mentioned a portable version of Eclipse but I can't recommend jumping into an IDE if you've never used one before. Try learning with a book and a text editor first.
In my opinion, the portable Linux-like Cygwin environment is always the best choice for software development on Windows.
Seriously.
A number of us have flexibility in this arena because we've been working for the same employer for a while, or we're in charge of a department, or because we're consultants/independent contractors. I'd often play video games at work after the end of the work day, and that was fine with everyone because the work got done.
Unfortunately a number of employers are implementing increasingly draconian policies regarding software and hardware use, and rules about what is/isn't appropriate policy, even after work has let out for the day, or even if your fun side programming projects could make you a more skilled and more productive employee. Some of these policies and rules even govern the work that you do when you aren't at work, even if you do it on your own hardware.
One option would be to boot your system off a usb key/external drive. This would allow you to run Ubuntu 12.04 (or something) and hack around using Python, Ruby, Java, Processing, or pretty much anything else you can dream of. This is a really cheap solution (A 16GB usb key is about $10 online). The problem with this approach is that you're still using your work hardware, and it's harder for you to switch between your company's OS/software and your own. Also, if your company has a problem with you installing software, they might get all upset about you booting from external media, too.
If you can pick up an old laptop for cheap (maybe ask friends if they have an old one they aren't using?) then you can throw something like lubuntu or just stock debian on there, and then you'll have a great little dev machine that you can use to program up a storm. You don't need a big hard drive, and if you're using it plugged-in, the battery doesn't even need to work.
If you start to work on a project that you actually want to release, ask your boss if it's okay for you to hack on things at the office. Even if it's just a small side project released under a FOSS license, you're technically on the clock and so it's best to get an okay ahead of time.
Good luck!
coding is life
Grab a large usb disk and the portable version of VirtualBox. Put your favorite snapshot on the usb drive and bam, your favorite environment with all of the software you want always with you.
http://stackoverflow.com/questions/2497146/is-css-turing-complete
and then there is javascript.
If you are not allowed to install anything not on the list, working around the rule using "portable applications" is rarely acceptable either.
What? Do you think the rule against "installing" things was because someone doesn't like the add/remove programs window getting cluttered up? Do you really think they'd be a-ok with you downloading a ton of crap and running it just because it doesn't require an "installation"?
As far as most normal IT people are concerned the fact that you didn't use an "installer" to get your non-approved crap on the PC is generally completely irrelevant.
You could give http://ideone.com/ a try.
Here is a brief explanation:
What is ideone?
Ideone is something more than a pastebin; it's an online compiler and debugging tool which allows to compile and run code online in more than 40 programming languages.
I should add that you can install the Ruby interpreter into a flash drive, or perhaps better for your purposes, use Jruby which runs on the Java Virtual Machine that is already pre-installed on most computers today.
I personally have Thinstall/Thinapp installs of Visual Studio 6, up to 2005, as well as a slew of Borland originating products. It was really no hassle and it just seems to work.
"When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
Because you explicitly asked for both a recommendation on an install-free solution as well as a language. https://www.pythonanywhere.com/
Your employer is not paying you to better yourself on their dime. Stop stealing his time and money and do proactive maintance on existing projects and code when the load is light.
I see far too many times where the bean counters cut employee headcount so much that people just put out one fire after another and it only stays together if no one is ever sick or goes on vacation.
You are a professional and now is the time to do things like QA, refactoring badly coded projects, and other things when the load is light so hell wont break loose when you get busy and your time is just putting out fires. Do your job right and you will be getting shit done instead of putting out fires.
You can better yourself at home on your own equipment as it is unethical to do anything but work your ass off when you are being paid. Also what if you write a cool killer app or FOSS project? Guess who owns it? IT wont be you on company equipment and time.
http://saveie6.com/
Lulls happen at work places and, instead of wasting time, he's developing skills he can use at said workplace. I don't think it's necessarily a scam. A similar story happened to me and I ended up saving money for the company by automating tedious tasks.
"I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)
I am not saying it is a great language.
But it does what it does fairly well for 1/10th the cost and time compared to Enterprise Application Server oriented platforms like Java EE and .NET. Most website development is fine with php just like you can make fairly medium complex projects with VB 6. Sure it can't scale to millions of lines of code but such a daunting project will not be done in a short summer anyway in some spare time.
Facebook uses php as do many websites and most of the jobs require it unless it is a corporate complex app which uses .NET and Java EE. Php has frameworks like Cake to hide much of the bad stuff where you can easily make small to medium sites that make up 90% of the market.
Ruby is not popular outside of rails and people love the templates and modify them for websites but then freeze when making their own solution. Python I never see jobs posted for and you will niche yourself out of the job market unless you are senior level. Python is interpreted as well while PHP runs inside the web server engine that is natively compiled.
Another great strength with PHP is you can download WAMP or a XAMMP stack on a flash drive which includes MySQL, php, and Apache on Windows which is what this person is looking for.
http://saveie6.com/
Javascript links in quite nicely and it runs in browser so no IDE needed. I know Internet Explorer and Chrome have a debugger built in so you should be able to get something together pretty quick.
TinyCC doesn't require anything else to run, is small, fast, and has enough functionality for hobby-level stuff. For an IDE, just use notepad or something.
However, if you get fired for this, it's going to be your own fault for knowingly violating the rules. Brining your own laptop might not be acceptable either, depending on the environment, but that would be the best possibility so it's definitely worth checking out. Another possibility is to use remote desktop or ssh or something to connect to your home box running whatever IDE you'll want, but again, check with your managers. If they don't allow it, just read a book about programming instead.
The distinction is legalistic-sounding to me. If your company policy is to not install unapproved software on your computer the fact it doesn't use an installer doesn't matter. You're still "installing" an unapproved executable on your computer. Even if it's a java .jar file.
"But it does what it does fairly well for 1/10th the cost and time compared to Enterprise Application Server oriented platforms like Java EE and .NET. "
So does everything else.
Hey, modders: If you want to really do your jobs, you're supposed to remember that "disagree" != "troll".
http://notepad-plus-plus.org/download/v6.1.3.html
Notepad++ v6.1.3 7z package : Don't want to use installer? 7z format.
You can run "Notepad++" from a USB stick.
I'm sure this idea will be soundly "ripped", but you probably have Microsoft Access installed. I have long "eschewed" Access myself for personal reasons, having bought the bloated version 1.0 of the product. However, I know that thousands of people have created really useful programs in Access, so much so that they are later ported to Enterprise environments like J2EE with Oracle backends to replace the Access database. In the kind of constrained environment you're in, you could do worse than get started in the Access environment.
No IDE here, but if all what you want is discover new territories, you'll just need an editor. Apart from PowerShell, there is another decent scripting language on Windows, which is JScript. That's a Javascript implementation allowing to access system resources through "ActiveXObjects". Example:
var fso = new ActiveXObject ("Scripting.FileSystemObject");
Have a look at MSDN for reference about this object and others, then browse it, and various blogs, while happily writing your scripts in whatever editor is present on your machine. By the way, they will run on any Windows system, even XP. The drawback is that interfacing to DLLs is often impossible when it hasn't been provided by MS.
Then, you might want to explore Javascript as a functional language - a usable Lisp in my opinion...
"if going down the Ruby route, then the online runner may be of help: http://tryruby.org/levels/1/challenges/0"
Why in the world was this modded down?
I found myself in a similar situation at a previous job where I was bored out of my skull due to a lack of work at the company during the down economy.
So I decided to teach myself some more programming skills.
Unfortunately, I was in the same position where I couldn't install anything.
Find csc.exe on your machine. All Windows machines have this. Buried down in here: C:\Windows\Microsoft.NET
Put it in your path.
Now you can write all the C# applications you want in Notepad. If you can get Notepad++ then it would make it a lot easier as it has code-coloring/indentation. I was able to install it by bringing the installer in on a flash drive. Being just an advanced notepad, I didn't worry about what would happen if someone noticed the install.
You can compile it via the command line with >csc.exe
You'll then have a nice little executable of whatever you made. And you may be surprised how complex of an application you can make this way...maybe you wouldn't. This approach sure helped fill my days for a while there.
Why don't you use a live cd? It wouldn't install anything on your computer and you could just use whatever tools are provided in the live cd.
Most bigger companies have Powershell on client systems to help manage them. There's a lot of tinkering to be done there.
I am in a similar situation to you. I also work in a company (distribution and corporate side of after sales parts for an auto manufacturer) that does not allow installation of non-approved software, and while I agree with some of the other posters regarding getting into possible firing territory by going against company policy, sometimes the experience can still be useful to help you move up or around in your company. Try to associate your tinkering with something already related to your job, or to help others in your department. Depending on the size of your company, strictness of management and company policy, you may wind up using a hobby to make lives easier for you and those around you. Or you may get canned. You don't say what kind of work you normally do or what sector of industry you work in, but you have several options. Here are some of the options I have looked at and used.
Personally, my first choice would be to find something that is already available to you without the need to install new software and work within that area. For example, you probably hve a web browswer available on uour work computer, and you already work with HTML and CSS, so you could move on to JavaScript. You can make little standalone projects using just these that are available to run unchanged on just about any computer. There are, of course, limits to this, such as local file access and things, but projects like TiddlyWiki may have some pointers. Another option within this realm is taking a look at the office suite available to you. For example, if you have MS Access or Excel on hand, you can make lots of things by getting into VBA scripting. (I recommend Access only because it lends itself better to application development. If you know enough VBA, you can just about make any Office app do what you want, but it's harder to do data manipulation in Word for example).
Another option, of you feel braver is to go the PortableApp route, like you mentioned. You can find portable versions of some scripting languages, such a s Python, which are workable. The downside is that if you decide you need a specific library that doesn't respect being shoehorned into being "portable" (in the sense of being able to run it from an external flash drive or hard drive without leaving traces on the host computer) it could lead to possible discovery by your IT group, depending on how invasive they are in their tracking.
Along in this portable app group, one item I might suggest trying is a scripting language called Rebol. (rebol.com). It's multiplatform interpreter and GUI library in a single file that has some interesting features. Depending on how you run it, it may put a couple of folders in the folder it exists in, but other than that, I think it's pretty "quiet".
Outside of that, some of the posters above have some neat ideas about either remote access to your home computer or utilizing online programming environments. I may even look into these for myself, as the may be feasible depending on what is currently not off limits thought the proxy at work.
By going with the "using what's already available to you" route, whether it's a web browser or an office suite, you may be better suited to present some of your projects and ideas to coworkers and management, since by using those, you technically may not be violating your company's do-not-install rule. It doesn't mean it's bulletproof as they could view creation of new scripts and projects as a violation of the rule, depending on how strict they are. You're the one that has to use your judgement and figure out what you think they will or will not allow, and whether or not it puts you in danger of getting fired.
*slight crashing sound*
Javascript would be an obvious choice. It's a sucky language, but would dovetail nicely with what you already know. Then you could switch to PHP on the server side, then Python or Ruby.
Once this will be found out, using "portable applications" (running un-approved executables on company hardware) will be considered "installation", and you will be fired.
Contrary to the popular belief, there indeed is no God.
I thought about live CDs. But then he said his workload was light, not zero, so he'd probably spend more time rebooting than doing his regular job and programming put together.
How about getting some virtualisation software onto the approved list? Then he can bugger about all he likes without doing too much damage.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
So if you already know HTML/CSS, why not learn Javascript? Use a web IDE if you can't install anything locally. http://c9.io/
Sublime Text is an excellent programmer's text editor that I use daily. It has support for tons of languages (and variants on those), automatic indentation, bracket completion, quote completion, a "memory" feature (knows variables you've typed), extensions support, and even compiling features. It has a full portable version, with nothing cut out. I'd highly recommend it, as the trial is unlimited (and the license is cheap for a tool this high quality - only $60).
So you complain about PHP when nobody even mentioned it (much)?
You may have noticed * there are lot of people coding shit apps in fancy languages who are bitter nobody cares about their shit apps. And they moan and moan and moan about PHP because people who *aren't* idiots get cool stuff done in that language as well as in any other. A good warning sign is bashing PHP when nobody is even praising it.
* of course, if you're one of them, you may have NOT noticed it, and will forever remain confused. Good.
I wouldn't even consider that a "post". It has no arguments, and ultimately no content. See how that works? It's real hard to reply, as there isn't anything to reply to.
That's great for you. Meanwhile, I would suggest [random thing]. And you have to do it because I said so. Isn't it great we discussed this?
Easiest way to get started is to build web apps in Javascript built on Google spreadsheets (Google Script). All you need is a web browser, and access to Google Drive.
Go to Google Drive, create a spreadsheet. In your spreadsheet, go to Tools/Script Editor. This will open a web based editor in your browser, and you can start programming. Click on Publish/Deploy as a web app, and now you're set. Build anything from simple functions used within your spreadsheet to full fledged web apps with a user interface. Easy as pie.
The pretty good book on Google Script will get you started in no time.
"So you complain about PHP when nobody even mentioned it (much)?"
I was not criticizing, I was telling the best and honest truth, as best I know it. And I have been there, so I do know something about it.
Don't like my advice? Fine. You are entitled to your own opinion. But just remember that I am, too.
While other browser-based options have been highlighted, I'll throw my thought in for a Beagleboard and using the built-in node.js environment. If the network is locked down, you would have to do more work-- thinking a transparent firewall if you have no control of the PC as a worst-case. A USB Ethernet adapter might work as well.
I guess you could use a headless Raspberry PI via local ssh instead if you wanted to go for the full LAMP approach, in much the same fashion.
But, if I saw you plugging strange boxes into the network I might be inclined to fire you. You are best off asking permission first... Maybe prefaced with a statement like "I'm a little slow right now, is there anything I can do to help?"
https://love2d.org/
You don't *have* to install it, I'm pretty sure you can get that running off a usb stick, it's just a LUA interpreter with a bunch of utility functions... but if you want to get stuff moving on the screen, it doesn't get much painless than this. Of course, LUA isn't super usable for a whole lot of things (not compared to javascript), but seriously... all programming at the core is the same fucking thing. It's just pushing around values in variables plus arithmetic operations and control logic, with various levels of syntactic sugar. Might as well start with something that's fun and then move on when you start feeling the limitations.
It might not seem "serious" enough for the workplace. But in the case your boss isn't a stuck up nolifer, you might still be okay ^_^
Hi...you could try sites that offer all programming right in the browser. Sites like glowscript.org, codebymath.com, or jsfiddle.net (for the css/html/js). Give these a try?
But come on: if you have never programmed, *any* language will teach you the same thing? I mean variables, control logic, that sort of stuff. The submitter isn't planning to do a million LOC app for a first project, and already knows CSS and HTML... so now that you mentioned it, PHP is actually a great first addition to that :D You can throw stuff on webpage quickly without jumping through a billion hoops first, so you quickly get to the part that initially matters -- variables, control logic, etc. -- while it's still more interesting than mere console output. Though surely there are ways to do that in the browser with Javascript, so even PHP might be overkill... -- it kinda tickled me to write that.
It wasn't, cowards start at 0 instead of the standard 1.
He is not automating such tasks but is learning while taking money from his employer and shareholders to do it. Unless he wants to expand his role to do things like help out debugging the website I see this as theft and dishonest like the original grandposter. True he put in a way to make him flamebait but I am shocked I am the only one mentioning the ethical issues involved besides that AC.
It would be paradise if it were like college and we could sit around and learn and do neat things that occasionally help out the big boss. But that is not the real world. The real world where people get fired for being 3 minutes late for work 3 times if you only have a HS diploma. THe real world where if the place doesn't fall apart if you go on vacation then you are truly not needed and provide no shareholder value etc.
Not all places are that bad to work at but I would discipline such an employee if I caught him doing this and coding, breaking policy, and doing non job related things on my watch. It is not that I am a dick, but it is just business and what a competent manager would do. If he wants to automate something like what you did I would say knock yourself off if it wont be too much of a hassle.
If you are a developer or do IT support there are always things to do. The good workers fix the infrastructure, call customers up, do QA, and refactor when times are light. THat way when things get hectic the chance of shit hitting the fan lessons. I am just the messenger here and stating the goals of business. That is life.
http://saveie6.com/
Simple solution, point out that this includes ownership of any malware I might write.
Security will have you on the sidewalk in five minutes.
Try arguing in court that ownership of the malware you produced has passed to your employer will end in a judge handing you your head back on a plate.
"But come on: if you have never programmed, *any* language will teach you the same thing?"
Not with the same degree of ease or utility.
PHP has virtually no internal consistency. It is a hodgepodge of utility functions, many of which do almost the same things, but take different parameters, in different order even. It was (is) a project in which contributions were just taken willy-nilly, and incorporated into the product, seemingly without regard to any sort of organization.
And object-orientation? A weird kind of object-orientation was sort of tacked on, in... what was it... version 5? While other languages have had that as a fundamental infrastructure from the beginning. Ruby, for example (I'm not certain about Python) is object-oriented from the ground up. The language is mostly written in itself. (The standard library does contain some C for performance.)
While many languages are "Turing complete" -- that is to say, given enough diligence they can theoretically accomplish anything that any other language can -- that does not mean that they are "equal" when it comes to everyday power or ease of use. Some are vastly more consistent and intuitive.
Here is an excellent example of what many programmers think of PHP. I did not make this stuff up.
No, for educational purposes, PHP is about the worst thing I could think of. I would advise someone to start out on C itself -- horrors! You can see how much I feel this -- before I would suggest PHP.
but, don't ya know, all "real" programmers must know and profess their undying love of C.
/cough
//don't care much for PhP, simply because of how easy it is to have a badly secured website and how low the pay for a PhP developer is
While it may be modded too low to appear, I haven't seen any comments about XAMPP. I've used it to teach a class on MySQL/PHP for several years, but it's just as good for simple HTML/CSS/Javascript. You can get it at http://www.apachefriends.org/en/xampp.html, and simply unzip it to the directory of your choice. The tone of the OP sounded like the company didn't mind programming being done during slow periods, but rather that they didn't want to violate their security policy by allowing someone to install software as local admin. Makes perfect sense to me. Many companies forbid bringing in personal computing equipment for similar reasons.
that is one weird comparison.
wondering if they meant vbscript?
That makes a lot of sense. Rare for this thread.
OP: Have you looked at the approved software list and see if there's anything on there that interests you? Or is it easy to get software on the list?
I don't believe Access comes with a standard Office installation. And while it does have VBA built in which would allow you to write software to interact with the database, VBA is a horrible horrible language. In fact if you're really that masochistic why don't you go all out and write a VBA application in an Excel spreadsheet to interact with your Access database. You'll know you're doing it right if you feel really dirty the whole time you're writing it.
Can you bring your own stuff into the workplace?
Maybe you could bring a Raspberry Pi and ssh into it to hack around, or jack a spare monitor/keyboard into it.
Maybe an iPad with Codea installed.
Also honestly I'd consider talking to the boss and getting permission to fuck around with this openly instead of doing it on the sly.
egypt urnash minimal art.
If you'd like to go all out, you can try something like Eclipse Portable which is available in the C/C++, Java, etc variants. It's technically labeled as a Development Test but it's 'stable' and being added to the main app directory shortly. There's also a test of BlueJ Portable available which is geared towards learning. If you'd like to just try something smaller, you can always start with something like SWI-Prolog Portable. There are a number of text editors available in the Development section of the Portable App Directory a few of which can kick off compilation right in MinGW Portable for you. And, if you're so inclined, you can help out test and code some of the apps requested or tested out in the Development forums or section of the PortableApps.com site. If there's anything else that would help out budding programmers, please just let us know!
Portable versions of Firefox, GIMP, LibreOffice, etc
Once upon a cubicle, our office was relocated. Just after the move, IT hadn't installed anything on our computers, and thus Internet access was down too. A coworker mentioned that one, "couldn't, do anything with just a fresh install of Windows!". It would be 4 days before the understaffed IT could get to our systems. In the meantime I made a Snackman game to prove a point, but also to kill time. I added the music and sound effects later, of course.
I haven't finished my the public facing blog yet, but you can also play a Tetris game I made using only the URL bar on my website.
What a nerd will do to win a bet... Yeah, I've posted it a few times before, now you can edit it and see the changes though.
So, I've been down this road. It's doable, but WTF man, don't you have a smartphone? Just use it. That, or fucking quit, that place sounds awful.
P.S. That little paragraph about any creations belonging to the company? I just quietly draw a line through it and initial it. If they ask questions I say: "That's my only hobby. Would you give up TV, Videogames, Movies, Golf, etc. for your job? If you want me to do so, then I'll need a hell of a lot more money."
http://jsfiddle.net/
then head over to jquery.com
I can't even say what's wrong with PHP, because -- okay. Imagine you have uh, a toolbox. A set of tools. Looks okay, standard stuff in there.
You pull out a screwdriver, and you see it's one of those weird tri-headed things. Okay, well, that's not very useful to you, but you guess it comes in handy sometimes.
You pull out the hammer, but to your dismay, it has the claw part on both sides. Still serviceable though, I mean, you can hit nails with the middle of the head holding it sideways.
You pull out the pliers, but they don't have those serrated surfaces; it's flat and smooth. That's less useful, but it still turns bolts well enough, so whatever.
And on you go. Everything in the box is kind of weird and quirky, but maybe not enough to make it completely worthless. And there's no clear problem with the set as a whole; it still has all the tools.
Now imagine you meet millions of carpenters using this toolbox who tell you "well hey what's the problem with these tools? They're all I've ever used and they work fine!" And the carpenters show you the houses they've built, where every room is a pentagon and the roof is upside-down. And you knock on the front door and it just collapses inwards and they all yell at you for breaking their door.
That's what's wrong with PHP.
At work we are not allowed to install anything except company approved software.
That's adorable.
It must have been something you assimilated. . . .
You could always try to sign-up for a Beta at http://koding.com/
Does your work computer have Java on it? If so, than Eclipse runs without needing an install. It has plugins for every type of development emaginable (for example, I do my Flash development in Eclipse). It also happens to be my favorite IDE (which includes those I've paid hundreds of dollars for), so you are not going to sacrifice on quality. It also seems to be hated by many, though, they never seem to say why. Personally, it is the most productive IDE I've ever used, despite some of its minor flaws.
Fanboy Status: Apache Flex, C#, Eclipse, KDE, Pirate Party, Ron Paul, Slackware, Windows 7
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
If you would like to try other languages or other approaches, there are online IDEs for that too:
ShiftEdit - Online IDE | ShiftEdit
ECCO -Web-based IDE
Cloud IDE
WIODE
CodeRun
Cloud9 IDE
http://www.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/
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 by Neal Stephenson
[-- Trust the Monkey --]
Oh god no, not that tired old argument order crap. If it matters that much to you, write wrapper functions, that's still fast enough. Not to mention those bloated list where half of the stuff applies to PHP4, and the other half doesn't matter in practice. You don't think I don't know that link? Heh. That post is old and a fractal of bullshit mixed in with petty annoyances, and only a few solid criticisms. And of course, the best counter-arguments are simply forbidden in the pre-face, "because I say so", how fucking lame can you get. Next.
Who cares?
Yeah well so is Javascript, and you can run that in your browser without touching the local file system at all. At least try to keep the topic you're posting in mind. I quote, the OP "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". And you criticize PHP which isn't even eligible. Well, lol.
This isn't for educational purposes.
Oh, and C rules, always did, always will. But that's entirely besides the point.
You wanted to know why you got modded down -- I don't know that, but I tried to tell why I think your post was a failure. I guess I failed with that as well. Happy coding.
How about you tinker on your own time before IT finds out and your ass gets fired?
Besides myself the only one stating the obvious. Who is paying the bills? Whose time is it? You are being paid to work.
http://saveie6.com/
There's a mobile/portable version of ultraedit, and while it can be nothing more than a simple notepad replacement, it can also be configured as a rather formidable IDE. www.ultraedit.com
What are the "many incompatible ways to do one thing", and how did you read that into the post I was responding to? Argument order is the most tired, most idiotic thing that can be brought up, yet it gets brought up every time, and I shouldn't even have dignified that bit with a response I guess. And since when is performance the crucial part in this context, and how can you keep a straight face when Ruby is mentioned? Decide, either you want it all fancy schmancy and pattern this and pattern that, or you want it fast. *Neither* applies to the topic, but still, at least you'd be consistent while being off-topic.
Peh.
Are you talking to/about yourself? Because that was just some weak-ass sophistry.
I'm glad you don't work where i do, as you are trying to cheat the system. Just because its not technically being "installed", its still a bad security practice to run software that hasn't been approved by IT.
I hope they lock your PC down so you cant even breathe and have to ask permission to even reboot.. I know i would...
---- Booth was a patriot ----
Chances are you already have access to some programming environments.
Have Microsoft Excel? (spreadsheet software) Then you can program in Visual Basic. (I may be wrong here, It may use something else now)
Have a web browser and notepad? Then you can do some simple web development with Html and Javascript
Another thing that may be installed already is Microsoft Office. I believe Microsoft Office products have a programming language built in. At a minimum if you have Excel then you can program some stuff in the spreadsheet. Though I think you can do much more than that. Some searching suggest you can program in Visual Basic in Excel.
He is not automating such tasks but is learning while taking money from his employer and shareholders to do it. Unless he wants to expand his role to do things like help out debugging the website I see this as theft and dishonest like the original grandposter.
They don't have enough work from him while he's on the clock and he's using that time to make himself more capable to help the company. Not theft. Sorry.
"I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)
It's a portable perl distribution. Put it on a thumbdrive, and use Notepad to edit code.
Don't steal. The government hates competition.
Comment removed based on user account deletion
"And you criticize PHP which isn't even eligible. Well, lol."
Quite the assumption there. It depends a hell of a lot on your native OS. PHP runs just fine on a Mac, right out of the box. (If you turn it on in your preferences.)
So does Ruby, so does Python, so does C, so does Java.
"You don't think I don't know that link? Heh. That post is old and a fractal of bullshit mixed in with petty annoyances, and only a few solid criticisms."
At least get your story straight before you reply. That post is "old"? Yeah... 2 months old! And the criticisms are all valid, from my point of view. Certainly none of them are false, in my experience.
This isn't for educational purposes.
Um... maybe take a bit of your own advice, and stick to what OP wrote? "... just to tinker a bit due to curiosity. pretty much equals "educational purposes", at least where I come from.
"You wanted to know why you got modded down..."
Not even close. I know very well WHY it was modded down. But I do not agree that the reason was valid.
If you have java installed then you could try Clojure, it's a dialect of a family of languages called lisp. You will probably need access to the command line. It's perhaps a little mind bending but I really like it.
I am not just going to agree with the popular view. In other words I have bad Karma.
The reason it's so 'obvious' to you is that you're assuming his boss has given him a full workload. That doesn't always happen for a variety of reasons and it's not the employee's fault.
No, his post should not be modded up and you seriously don't know what you're talking about. Honestly I'm starting to think both of you have pointy hair.
"I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)
No. You're being paid to get a set of tasks or jobs done and be available to handle more as they come up. If they are completed and there's nothing pending, then what? Of course, this is assuming you're an exempt employe. Hourly employees are little more than indentured servants these days.
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
You'd punish the guy for coding and doing non-job related things on your watch (his question is about not breaking policy, so you don't have him there)? Why? If his assigned tasks are getting completed, and his job performance isn't suffering, then why would you fire an employee for trying to improve himself?
I know why. You're a lousy boss.
I've met people like you. I've worked (briefly) for people like you. I walk out - a bad boss is not worth any amount of money to me. On the other hand, I'll work three times as hard for a good boss. You're trading loyalty for paranoia and resentment, and the only benefit you get from it is the employee performing busywork just to maintain the false perception of "professionalism." You're treating your employees as machines instead of humans.
Performance and meeting job expectations is the only relevant factor in an employee's worth. Does the employee do the job acceptably and on time? Does he/she do so in a manner that benefits the department/company/unit? If yes, then leave him/her alone. If no, replace them. It's as simple as that. Any micromanaging will only cause trouble for both the company and the employee.
Those who can't do, teach. Those who can't teach either, do tech support.
I'm glad I don't work for Billy Gates there. He's the kind of person who'd fire people for thinking.
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
TBH sounds like call-center work. He's a worker bee. "We don't pay you to think!"
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
FTFY
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
If someone sees you using "portable" applications that aren't on the approved applications list the policy gets clarified ... the phrase "you may not install non-approved apps on company computers" gets changed to "you may not install or run non-approved apps on company computers"
Your move.
I had a similar situation at work. Get yourself a VPS - there are hundreds of companies out there - and then tunnel into it for playing around. If you're lucky your company lets you use SSH. If you're not Pendriveapps.com has PuTTy on a pendrive version. Use that to connect to your server and there you can do whatever you like, from Python to Perl to Lisp to Haskell.
If this were Usenet, I'd killfile the lot of you.
Indeed. That's why any firefighter with a decent work ethic should be walking the streets handing out matches to children.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
group
policy
object
How about the next step up from HTML/CSS?
Notepad++ with the XMLtools plugin is a decent IDE for XML/XSLT work, and can be run from a thumbdrive without installation.
For FO, you need an output processor (FOP), I haven't found a portable output processor yet.
I see two funny assumptions / themes in most responses
1) OP only has time during the summer. Is IT willing to install / support a dev environment before the end of summer, without back charging the department thousands. Are they even willing install something "just for testing and learning" ? I'm speaking from experience, for example for a couple weeks now, four teams have been trying to add another static NAT for me, plenty of stalling and finger pointing. Everyone in management and other departments might be in full formal written support of what OP is trying to do, but due to policies and procedures, etc, it simply can't be done in the time and budget provided.
2) My boss would never let me do "Z" therefore this guy cannot possibly have management permission to do "Z". I find this extraordinarily unlikely given the nearly universal understanding and acceptance of variation in workplace WRT absolutely everything else. This is a close cousin of "I work for inhuman slavedrivers, therefore its morally inappropriate for any other working relationship to exist anywhere else". Basically the quisling approach... most working relationships are not that screwed up.
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
Frankly and directly, that is the ONLY sensible way to tackle this.
The obvious reason: Doing something on the job that's not part of the job and not sanctioned by your superiors is asking for a "get your ass out of here now" speech. At best, they won't notice it and you won't get anything out of it but a few "tinker-toy" experiences you cannot even put on a resume. At worst, it's asking for trouble.
You might find that your boss is actually a sensible man who might want to put his employee's time to its best use. If you told him that your workload during Summer is minimal, he might of course find something more useful for you to do (which is, if you ask me, perfectly within his right), but he just might also find your active engagement to improve your skills interesting and commendable and give you what you want. I have never worked for a boss who wasn't interested in an employee that wants to improve his skills at no extra cost for the company.
Sweeten the deal by telling him what you might be able to accomplish additionally if you had the skills and he will most likely actually support you instead of hanging that "if they find out..." problem looming over your head.
We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
Now, now... being "grateful" for a job is kinda asking a bit much if you ask me. A job is a contract between an employer and an employee. You give me your workforce, I give you money. His boss might not even have noticed yet that there is little to do during Summer, and he would probably be very thankful for the information that this is the case. And if I didn't have anything to do for my employee for a time period and he comes up to me and asks if he could improve his skills during that time, why would I say no? Especially if it doesn't cost me a dime?
I'd sure as hell prefer that to an employee who keeps his mouth shut and just doodles or solves Sudokus...
We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
Get a 32Gb usb stick (not expensive) and put Portable Virtualbox on it.
Then make a VM and put whatever you like on it. Problem solved.
Weaselmancer
rediculous.
I use a SSH tunnel home (putty), Firefox, and Notepad++ all from portable apps to do hobby work from my job. Albeit Notepad++ isn't an IDE, I can use the FTP plugin to edit stuff on projects I'm using. You could also use Emacs over the SSH. So then I also have Apache running so I can play with what I'm working on. Works well. That said, I only do minor tweaking and bug related fixes at work. I do the real time consuming stuff at home.
Chewbacon
The Bible is like Wikipedia: written by a bunch of people and verifiable by questionable sources.
Web IDE that support dynamic languages like Python, PHP, Ruby are quite common but Cloud IDE that do support compiled one (Java, C#,Objective C) are rare. Though in an enterprise environment JEE and .Net are very popular.
Before, If you wanted to work with Java you needed to install at least Eclipse which comes with its own JVM.
Now you can do pretty much the same thing completely online: Build, Debug and Deploy
Tools like eXo Cloud IDE allows you to do some Java Debug online as you can see in that video. You can also create more advanced build jobs thanks to Cloudbees DEV@Cloud and bind the two services through GIT.
Then you can deploy your app to any PaaS that support Java like CloudBees, CloudFoundry, Openshift or even Heroku.
Its very hard to answer a question! Judging from most responses, nitpicking around issues related to a question is easier.
I'm an old timer, but all of the cool kids that I know are using CoffeeScript http://coffeescript.org./
It's just an extension of Javascript and it compiles into ordinary Javascript.
It fixes most of the weird "broken" syntax of Javascript -- making it much more similar to Python (a better learning language -- if you could install it).
Best of all -- it runs in the browser -- hit the "Try CoffeeScript" tab in at coffeescript.org.
or Cloud IDE , especially if you use Java: Online Java Debug Video
This shouldn't be rated Troll... Just way too many "Hey wait, I use and like PHP" folks out there who haven't actually used a real language. I would say Python is easier for a non programmer to pick up than Ruby, though. That's not to say Ruby isn't fantastic.
Dude, PHP is an interpreted language. Apparently your definition of a compiled language is that the interpreter is compiled, in which case all interpreted languages are compiled languages.... lolwut? PHP runs as a module inside the web server, just like Python Server Pages, Java Server Pages, etc. Wow, I can't believe I'm replying to this. Not to mention, it is also an awful language with no consistencies even between what seem like similar functions. It plain sucks and suggesting it as a "starter language" for a programmer-to-be is both irresponsible and mean.
In contrast to WAMP, download Python, load a couple of modules (CherryPy + Jinja2 come to mind) and you're all set. It's its own web server. How simple is that? These are tools that greatly encourage MVC development. Learning Python or Ruby has the advantage of teaching someone how to program as opposed to how to make stuff show up on a web page. PHP encourages messy, unmaintainable code, which is the opposite of languages like Python and Ruby.
Lastly, Facebook uses PHP because it just happened to "start out" as a PHP site, not because it was the right tool for the job. As such, their performance and no doubt, their maintainability, has been a huge issue as they've been growing.
First rule of management;
Treat your employees well and they will go the extra mile for you when you need them to. Treat them poorly and they will fuck you around every chance they get.
those human resources are fucking fungilbe as shit
Fungilbe? Sounds like a town in Africa, not far from Tecardre and Imcilbi
For "Tecardre", I get "cratered" and "terraced", but nothing for "Imcilbi".
Got hosting? Could you get free hosting?
You have a dozen online IDEs to pick from, perhaps codeanywhere, cloud9ide or shiftedit would be good choices. Write your PHP, Perl, Python, etc, right there.
Got hosting? Could you get a free shell account?
Download PuTTY and ssh in, find your favorite editor and install it to ~/.local or wherever you get to put your personal programs. Code to your hearts content and compile it - C, Haskell, Malbolge, whatever you like.
*Really* want to develop on Windows? Okay, go to vbox.me and download Virtualbox, install it portably. Bonus points if you put it in a truecrypt partition so dismounting it leaves no traces. Install Windows in a virtual machine and enjoy being administrator. Install your favorite IDE and program away.