emilsit + programming   62

Programmer Competency Matrix
Nicely organized list of competencies.
programming  career 
19 days ago by emilsit
Notes on syntax | Ola Bini: Programming Language Synchronicity
Very thoughtful note on programming language syntax: what's important for readability, expressiveness, redundancy, etc. "Suffice to say, syntax matters."
programming  language  design 
february 2012 by emilsit
Use random hashing if you care about security?
Hash tables that are deterministic across application invocations can make an application vulnerable to maliciously chosen inputs that evoke the hashing algorithm's worst case behavior (e.g., falling back to linear probing). So, maybe, don't do that.
programming  security 
january 2012 by emilsit
Don't write on the whiteboard :: Joseph Perla
A variety of ways in which you can be awesome during an interview.
programming  interview 
january 2012 by emilsit
Darts, Dice, and Coins
"You are given an n-sided die where side i has probability pi of being rolled. What is the most efficient data structure for simulating rolls of the die?" A well-written exposition leading up to a very efficient algorithm/data-structure.
math  algorithm  programming  reference 
january 2012 by emilsit
Experience Report: Feature Toggling | Sarah Taraporewalla's Technical Ramblings
"You see, Feature Toggling is not just a different way to achieve feature branching. It is an architectural choice that, sure, helps with maintaining mainline development but the power is that it hands back control of what features should be enabled and when to the business. And it is there, ready for you to harness. No extra steps required. As awesome as Git is, you just cannot compete with something that allows you to not only control what features go into a release but what features are live at any one time."
programming  release  workflow 
december 2011 by emilsit
On DVCS, continuous integration, and feature branches | Continuous Delivery
Branch by abstraction, some discussion about feature toggles and other alternatives.
programming  workflow 
december 2011 by emilsit
Make Large Scale Changes Incrementally with Branch By Abstraction | Continuous Delivery
Another write-up of BBA. Slightly more direct; includes some discussions of DVCS and the BBA model. Also comparison to feature switches and other things.
programming  reference 
december 2011 by emilsit
Branch By Abstraction | Inversionism | Paul Hammant's blog
For doing big changes, introduce a layer of abstraction, swap-out the lower layers incrementally. Some nice pictures, and updates over time.
programming  reference 
december 2011 by emilsit
Programming language impact on the development of distributed systems
By Debasish Ghosh · Justin Sheehy · Kresten Krab Thorup · Steve Vinoski.
"In this
paper, we first present a history of programming languages
and distributed systems, and then explore several alternative
languages along with modern systems built using them. We
focus on language and application features, how problems of
distribution are addressed, concurrency issues, code brevity,
extensibility, and maintenance concerns."
programming  language  systems  comparison 
december 2011 by emilsit
Janki Method | Jack Kinsella - Rails Developer London
Focus on solving the problems with learning programming. Spaced-repetition plus some nice heuristics for when to add facts and how to gain more knowledge. Tim Ferriss would be proud. /via reddit
learning  programming 
december 2011 by emilsit
Why Software Projects are Terrible and How Not To Fix Them | Sealed Abstract
RT @maggadora: On how to make good sw projects and not to try saving the one that are lost
software  programming  project  management 
november 2011 by emilsit
Mike's World-O-Programming - The Y Combinator (Slight Return)
A somewhat long discussion of the Y combinator, but pretty readable, especially if one thinks back to 6.001. However, it does pop back and forth between lazy and strict evaluation, which I think may be more confusing than not to someone who doesn't know what that is.
functional  programming  theory 
july 2011 by emilsit
One Div Zero: Getting to the Bottom of Nothing At All
An excellent exposition of bottom types and why you might like to have them in your type system.
programming  language  theory 
july 2011 by emilsit
Monads Are Not Metaphors - Code Commit
Fabulous exposition of Monads, with detailed examples in Scala.
programming  tutorial  monad 
july 2011 by emilsit
Economizing can be penny-wise and pound foolish
"Pick up the source code for a program and three highlighter markers, one green, one yellow, and one red. Go through the source. If you don’t understand what something does, mark it in red. If you understand it, but it has everything to do with the accidental difficulty of the implementation and nothing to do with the inherent difficulty of the problem, mark it in yellow. And finally, if something seems to express the problem and its solution fairly directly in an manner you understand, mark it in green."
design  programming  abstraction 
april 2011 by emilsit
Computer Science Unplugged |
Lessons and more for how to teach computer science concepts without a computer.
education  learning  programming  reference 
november 2010 by emilsit
Ovid at blogs.perl.org: What to know before debating type systems
Great overview of typing. Equates the need for TDD with dynamic types.
programming  language  reference 
september 2010 by emilsit
I Don't Code in my Free Time
Passion yes, coding in spare time no.
interview  hiring  programming 
may 2010 by emilsit
A Hierarchy of Needs for Code - Patrick Dubroy's blog
Thinking about programming and how to prioritize things like functionality versus maintainability versus elegance.
programming  tips 
april 2010 by emilsit
97 Things Every Programmer Should Know.
This is, I think, the full text of the ORA book. Looks like definitely worth reading.
book  programming  reference  tips 
march 2010 by emilsit
rhomobile - the open mobile framework
An open-source framework, hosted at github, based on Ruby, for developing cross-mobile platform apps.
android  iphone  phone  programming  ruby  software  library 
march 2010 by emilsit
A Fresh Start « Software Carpentry
Teaching non-programmers the best practices of programming.
A proposal for revamping an existing course into a specific problem-driven one.
software  programming  education 
february 2010 by emilsit
Geeking with Greg: Advice from Google on large distributed systems
Jeff Dean says, "Do your back of the envelope calculations." "Don't prematurely scale." And more.
programming  scalability  systems  performance  google 
november 2009 by emilsit
Cappuccino Web Framework - Learn About Cappuccino and Objective-J
"Cappuccino is an open source application framework for developing applications that look and feel like the desktop software users are familiar with." Runs on JavaScript, and you write code in something called Objective-J which looks like Objective-C. Sometimes it is scary what you can do in JS.
software  programming  webapp  tools 
november 2009 by emilsit
Programming for Scientists
If you're not in computer science, you typically receive no training in how to write good programs--part science, part art, part engineering. This blog has many posts about what you want to think about in terms of developing good code. Probably takes a bit more work up front but will pay off for your science in the long run.
programming  advice  blog 
november 2009 by emilsit
Obie Fernandez: 10 Reasons Pair Programming Is Not For the Masses
What one person thinks you need to get productive pair-programming coders. Looks like a good list to me.
programming  tips  xp 
november 2009 by emilsit
PThreads: Semi-FAQ Revision 5
Nice detailed write-up on canonical pthread usage.
programming  unix  pthreads 
october 2009 by emilsit
GolfScript
A stack-based language (with variables) designed to write (complex) programs in the fewest number of characters. Basically, all functions are a single ascii character.
programming  language 
october 2009 by emilsit
Tiny Code: New additions: Movitz Lisp, Ocaml Mindstorm
List of tiny programming languages (e.g., small runtimes, tiny compilers, etc.)
programming  language 
september 2009 by emilsit
cs252r Record
'These pages are a record of the in-class discussions for the graduate class "Advanced Functional Programming" given at Harvard University in the Fall of 2006.' - seem largely Haskell focused, but maybe the cool part is the reading list and exercises.
functional  programming  reference 
may 2009 by emilsit
Boomerang: A bidirectional programming language for ad-hoc data
Defines "lenses" that go from one data format to another. Based on a subset of OCaml.
programming  synchronization  language  tools 
april 2009 by emilsit
Actors, Mina, and Naggati
Instead of continuation passing, nested lambdas?
software  programming  scalability  design  java 
march 2009 by emilsit
Clojure - Functional Programming for the JVM
From Object Computing, Inc. - Java News Brief - March 2009, by R. Mark Volkmann. A single-page, rapid in-depth overview of Clojure. Language features, code snippets, etc.
functional  programming  reference  clojure 
march 2009 by emilsit
why's potion at master - GitHub
(Yet another) new programming language, aiming to be clean and explore ideas related to mixins. JIT-based (for x86, x86_64), should integrate well with C. Based on Lua VM.
programming  language 
january 2009 by emilsit
Collected Papers of Alexander A. Stepanov
By designer of C++ STL, most notably for me so far, a set of very detailed notes on programming (in C++) and the kinds of pitfalls, etc ... deals somewhat with types and mapping abstractions with underlying mathematical/algebraic concepts, impact of implementation on performance, ...
programming  reference  c++ 
december 2008 by emilsit
rietveld - Google Code
Code review tool from Google! Compare to ReviewBoard. Appears to provide also a public service (codereview.appspot.com).
tools  software  workflow  programming 
august 2008 by emilsit
Optimizing Build Times Using Parallel "make"
Common problems and potential workarounds when running make in parallel.
programming  reference 
july 2008 by emilsit
Understanding Strict Aliasing
Lots of examples on why it's good but how it can cause trouble if you're not careful.
c  programming  compiler  reference 
july 2008 by emilsit
chris blogs: My DVCS wishlist
April 2006 comparison of various VCS systems (git, mercurial, monotone, darcs).
software  programming  git  mercurial 
may 2006 by emilsit
PullThePlug.org -> Wargames
A set of Xen-hosted machines with step-by-step puzzles/instructions for learning basic techniques of the hacker world.
security  programming 
may 2006 by emilsit
Making An Operating System Faster
10 things done in OS X to improve performance: filesystem optimizations mostly for better file location, read-ahead, caching, etc. Includes list of useful OS X debugging tools for developers.
macosx  performance  programming  debugging 
march 2006 by emilsit
ProgrammableWeb: Web 2.0 Reference Center
Links to docs about major programmable web technologies (AJAX, SOAP, REST, etc.)
Main website also has blog and database of mashups.
programming  reference  webdesign 
march 2006 by emilsit
Scapy
Python based packet assembly and dissection toolkit
software  network  programming 
march 2006 by emilsit
Deconstructing the Skype Protocol - BlackHat Europe 2006
A complete look at how Skype protects itself and how to defeat those protections. Concludes with a view of how you can turn Skype into your very own bot-net, probing proxy.
skype  voip  debugging  programming 
march 2006 by emilsit
State Threads Library
Use special calls for I/O to effectively 'yield' to a different "thread".
asynchronous  programming 
march 2005 by emilsit

Copy this bookmark:



description:


tags: