I do: machine learning, nlp, ocr, expert systems, big data, and systems integrations. Also do a fair amount of datacenter infrastructure, as I don't use any PaaS/SaaS.
Languages: clojure, scala, haskell, and sometimes javascript (when clojurescript won't work)
I'm a data analyst / data application developer for a large humanitarian NGO.
What: Lots of small data analysis projects, some large web projects. All projects are in git repos or in our division's SVN. My work tends to involve ETL data flows, statistical analysis, web development and data visualisation. I'm not "full stack" as I never really play with hardware or do much systems administration. I do get to control a nice big, enterprisey Oracle data warehouse, with a few hundred users, but I've hardly played with nosql, redis, mapreduce, etc.
Most of my problems can be solved in-memory, and most of my data fits on a single disk.
How: SQL. SQL. More SQL. PL/SQL. Python (Pandas, scipy, numpy). R (these days only when I can't find a python lib). Javascript (just jquery, underscore and D3). Windows 7 while at work, Ubuntu + i3 wm at home. Edit in vim with very few plugins, everything else is done in zsh/powershell. IIS for production, Pyramid/Pylons Project for quick prototyping. A wide variety of RDBMS, but chiefly Oracle. I do lots of my templating/css in-browser using developer tools (FF, Chrome, IE9).
My typical web stack is static html and javascript, with json served up out of purpose-specific database views. No need for an MV* framework, since I'm almost never dealing with transactional data.
I also use Excel for a) doing quick data transforms b) building interactive, distributable data analysis apps in less than an hour. I'm trying to build an excel replacement with vim bindings and LISPy worksheet formulas.
My workflow is very similar. All data analysis, all the time.
Tools: Lots of SQL (MySQL). AWS Elastic MapReduce + Hive for log analysis. Python (pandas). R (ggplot2 + stat modeling - haven't fully grok'd Python's statsmodels package yet). A little bit of D3, and a lot of command line. Maybe some Flask every once in a while to prototype out a reporting web app.
I try to avoid Excel entirely because it always crashes on my MBP, but still find myself in it every so often to simply look at my dataset.
> ... but still find myself in it every so often to simply look at my dataset.
Exactly this. I could never understand why there isn't some awesome, lightweight, terminal-based tool for looking at dataframes, and doing basic manipulation.
Professionally, telecom infrastructure stuff. Platform: Linux (RHEL), C++. Development tools: Emacs, git, lots of xterms.
For fun: Random hacks (Linux / OS X / Common Lisp + Emacs + SLIME), occasional 6502 hacks targeting the old NES (actually Lisp generating machine code, not traditional assembly), and some FPGA stuff on the Papilio Pro board using Verilog and the Xilinx tools. Also a couple indie games on the back burner - one in Lisp, the other in C++.
What: I'm not a professional programmer, but I spend a lot of my free time coding my various hair-brained money making schemes. Trading bots mostly.
How: My main development enviroment is VS 2013 on Windows 8.1. On most of my "real" projects I work with C#, though I've been experimenting with F# for that recently. For those little scripting jobs for little automation type things, I used to use Powershell. (if you haven't heard of it it's the native scripting language for Windows). Hardware-wise, I use a Lenovo U410 which I'm really been liking over the last year.
Web development. Mac, but most of my time spent in Ubuntu VM (through Fusion -- planning on installing it on metal soon) with ST3 (a lot of packages), git, hipchat and keepass/1password.
I do a lot of DevOp related work so I spend a lot of time in iTerm2/terminal on EC2 instances and rue the day that I haven't worked through Chef/Puppet (yet).
If you haven't tried Studio since it hit 0.2, it might be worth another look. It's become much more stable and I've been able to replace Eclipse completely. I actually don't have Eclipse installed on my primary dev machine right now.
I admit I used it early on (i.e. June) and was trying to build an app with Google Maps. The problem was that I needed to understand Gradle in order to manually edit the build files. I figured I'd tough out eclipse for the next little bit, until the Gradle issues are fixed. Next time I'm fooling around with Android, I might give it another chance.
I'm doing CS at high school, but also doing some projects of my own on the side.
I use PHP for myself (I started with it because it was easy, and I don't feel like rewriting what I've already done), along with Javascript and SQL. At school I use Java.
Most of my coding is in NetBeans at the moment, though my CS course recommends some thing called BlueJ. I also use Git.
I program ruby most of the time, with some sysops mixed in here and there. A smattering of other languages as the need arises. OS is Arch Linux, and I use the i3 window manager. Coding is done in Vim. ZSH & Konsole are my terminal weapons of choice after a lot of experimentation.
I have three activities with slightly different tools and workflows.
* Generic
Everything is under Subversion, my employer's VCS of choice.
Briefs usually come as Word/Excel/Powerpoint files.
Compositions usually come as messy Photoshop files that I spend too much time tidying up.
Emails are the basis of interaction between departments (we have tried other means but they all failed for one reason or another) and we use Mantis for tracking bugs.
I'm on Mac OS X.
* HTML/CSS/JS frontend dev
When I start a project, I do it with a small script that creates a standard project and puts it under version control. Once it's done, I tipically open the README in Vim, populate it with a bunch of infos on the project and a TODO list. That file is my entry point in the project:
$ cd /path/to/project
$ vim README
Subsequent file navigation is done from Vim itself (either with built-in commands or with CtrlP), keeping the README in its own tab.
A tags file for my CSS and JS is generated at the root of the project every time I leave insert mode for better navigation.
On the browser side, I used an "autoreload" extension for a long time and now I use tincr http://tin.cr which works very well.
Deployment is never handled by me but is a manual task done with FileZilla, :-(
I'm sorry to say that we have no internal guidelines on anything.
* "Heavy" AS3 dev (whole apps/sites)
Almost everything is done in Flash Builder (with a vim plugin called vrapper) for my new projects or on an old PC in FlashDevelop (used by two previous coworkers) for legacy projects.
I also use a little Java app called Vizzy to show debug info when the app is not run from Flash Builder.
* "Light" Flash dev (banners)
Everything is done in the Flash IDE itself.
At home, it's typical linux hackery: terminal+vim.
26 comments
[ 4.4 ms ] story [ 70.5 ms ] threadiTerm and TMux in integration mode.
Nano for writing code, VIM for text transformations more complicated than a simple find/replace regex.
ACK for search
For .Net:
Xamarin Studio
Nano for bash scripts
iOS:
XCode
Alcatraz - XCode plugin/package manager
OMColorSense plugin to get a color picker when creating UIColor objects
Languages: clojure, scala, haskell, and sometimes javascript (when clojurescript won't work)
Development: vim and a command line
Heavily used OSS: incanter, redis, titan, postgres, cassandra, storm, akka, nginx, jetty, finagle, netty, bookkeeper, opencv, smartos, ansible, xen
Services: github, pingdom, google apps
I currently use nano during remote terminal sessions, but I'd like to become comfortable with vim sometime soon.
I also got my first Thinkpad recently, and I love it.
I use Sublime Text as my editor and Vagrant for my development environment. I use vim on servers. That's about it.
What: Lots of small data analysis projects, some large web projects. All projects are in git repos or in our division's SVN. My work tends to involve ETL data flows, statistical analysis, web development and data visualisation. I'm not "full stack" as I never really play with hardware or do much systems administration. I do get to control a nice big, enterprisey Oracle data warehouse, with a few hundred users, but I've hardly played with nosql, redis, mapreduce, etc.
Most of my problems can be solved in-memory, and most of my data fits on a single disk.
How: SQL. SQL. More SQL. PL/SQL. Python (Pandas, scipy, numpy). R (these days only when I can't find a python lib). Javascript (just jquery, underscore and D3). Windows 7 while at work, Ubuntu + i3 wm at home. Edit in vim with very few plugins, everything else is done in zsh/powershell. IIS for production, Pyramid/Pylons Project for quick prototyping. A wide variety of RDBMS, but chiefly Oracle. I do lots of my templating/css in-browser using developer tools (FF, Chrome, IE9).
My typical web stack is static html and javascript, with json served up out of purpose-specific database views. No need for an MV* framework, since I'm almost never dealing with transactional data.
I also use Excel for a) doing quick data transforms b) building interactive, distributable data analysis apps in less than an hour. I'm trying to build an excel replacement with vim bindings and LISPy worksheet formulas.
Tools: Lots of SQL (MySQL). AWS Elastic MapReduce + Hive for log analysis. Python (pandas). R (ggplot2 + stat modeling - haven't fully grok'd Python's statsmodels package yet). A little bit of D3, and a lot of command line. Maybe some Flask every once in a while to prototype out a reporting web app.
I try to avoid Excel entirely because it always crashes on my MBP, but still find myself in it every so often to simply look at my dataset.
Exactly this. I could never understand why there isn't some awesome, lightweight, terminal-based tool for looking at dataframes, and doing basic manipulation.
iTerm
ssh to machines
chef/knife - look at config/status/recipes of servers
vi - edit stuff, esp. recipes or scripts (wish I learned emacs, never have)
scripts in bash/perl/python/ruby
graphite - store data
logstash - store logs, sort logs, quantify logs, send log stats and metrics to graphite
jenkins - continuos integration, take dev code, run through tests, test deployment
postgres - tuning, fighting, debugging, profiling
redis - checking
sensu/nagios - monitoring
lots of good fun!
Languages: Ruby/Go/Haskell
How: Sublime Text/Vim/Vintageous, Virtualbox/Vagrant, Arch Linux/Debian Jessie VMs on Windows, and a variety of other programs.
Services: Github, Bitbucket, Travis-CI, DigitalOcean, etc.
For fun: Random hacks (Linux / OS X / Common Lisp + Emacs + SLIME), occasional 6502 hacks targeting the old NES (actually Lisp generating machine code, not traditional assembly), and some FPGA stuff on the Papilio Pro board using Verilog and the Xilinx tools. Also a couple indie games on the back burner - one in Lisp, the other in C++.
general OS: mainly linux (debian-like for reason of compatibility with some of my hw), sometimes windows in a wm when needed
Web dev --> konsole, kate, sublimeText2, vim, intelliJIdea12 --> php (laravel, yii), javascript/jquery, python/django, html5, some css3
Mobile dev(android mainly) --> kate, androidStudio, intellijIdea12
How: My main development enviroment is VS 2013 on Windows 8.1. On most of my "real" projects I work with C#, though I've been experimenting with F# for that recently. For those little scripting jobs for little automation type things, I used to use Powershell. (if you haven't heard of it it's the native scripting language for Windows). Hardware-wise, I use a Lenovo U410 which I'm really been liking over the last year.
I do a lot of DevOp related work so I spend a lot of time in iTerm2/terminal on EC2 instances and rue the day that I haven't worked through Chef/Puppet (yet).
OS: Ubuntu 12.04 LTS with Win7 in VMware (For IE, Photoshop, and Office). Vagrant for local servers.
Editors: Sublime Text 3 for local and vim for anything remote. Eclipse if Android (only because Android Studio is too buggy to use).
Misc: Git for Source Control and grunt for the tedious stuff.
Whenever I do
Language/Framework: Ruby, Rails
OS: Ubuntu 12.04 LTS
Editors: vim with Terminal (Bash), geany (sometimes)
Services: Github, Bitbucket, Digital Ocean
I use PHP for myself (I started with it because it was easy, and I don't feel like rewriting what I've already done), along with Javascript and SQL. At school I use Java.
Most of my coding is in NetBeans at the moment, though my CS course recommends some thing called BlueJ. I also use Git.
* Generic
Everything is under Subversion, my employer's VCS of choice.
Briefs usually come as Word/Excel/Powerpoint files.
Compositions usually come as messy Photoshop files that I spend too much time tidying up.
Emails are the basis of interaction between departments (we have tried other means but they all failed for one reason or another) and we use Mantis for tracking bugs.
I'm on Mac OS X.
* HTML/CSS/JS frontend dev
When I start a project, I do it with a small script that creates a standard project and puts it under version control. Once it's done, I tipically open the README in Vim, populate it with a bunch of infos on the project and a TODO list. That file is my entry point in the project:
Subsequent file navigation is done from Vim itself (either with built-in commands or with CtrlP), keeping the README in its own tab.A tags file for my CSS and JS is generated at the root of the project every time I leave insert mode for better navigation.
On the browser side, I used an "autoreload" extension for a long time and now I use tincr http://tin.cr which works very well.
Deployment is never handled by me but is a manual task done with FileZilla, :-(
I'm sorry to say that we have no internal guidelines on anything.
* "Heavy" AS3 dev (whole apps/sites)
Almost everything is done in Flash Builder (with a vim plugin called vrapper) for my new projects or on an old PC in FlashDevelop (used by two previous coworkers) for legacy projects.
I also use a little Java app called Vizzy to show debug info when the app is not run from Flash Builder.
* "Light" Flash dev (banners)
Everything is done in the Flash IDE itself.
At home, it's typical linux hackery: terminal+vim.