
Self-Taught Developers: Are You Missing Your Foundation You seem to equate "foundation" with knowledge that's not immediately applicable. There's some truth to that, but I think it misses the forest for the trees. Knowledge is just the tip of the iceberg when it comes to excellence in software development. Think of programming like writing an essay. Programming is similar. Now from your "I'm fine" list it sounds like maybe you're not interested in excellence in programming per se, just in the business value you can create by programming well enough to solve your customers' problems. But if you want to be a good programmer, to really master the skill, then you need a bit more than a few tools that can solve most problems, and being able to learn new skills just in time. Knowing how to solve a problem 5 different ways means you can choose the best way for the current situation, knowing that the other 4 solutions will probably be called-for another time. I'm self-taught too, so I get it.
Secrets of tabs in vim Secrets of tabs in vim Thursday, 17 January 2008 I spend much of my day working on other people's code. Tabs are eight columns wide. I've seen some especially ... creative tab styles not listed above, including code indented with various innovative mixture of tabs and spaces. tabstop Set tabstop to tell vim how many columns a tab counts for. expandtab When expandtab is set, hitting Tab in insert mode will produce the appropriate number of spaces. shiftwidth Set shiftwidth to control how many columns text is indented with the reindent operations (<< and >>) and automatic C-style indentation. softtabstop Set softtabstop to control how many columns vim uses when you hit Tab in insert mode. Indentation in the real world Putting it all together, the following incantations will configure vim for each of the cases listed above: Tabs are eight columns wide. Just to prove it's possible, here are some more ... creative indentation styles and their vim representation: Tabs are eight columns wide.
Creating a new GPG key | Ana Guerrero Lopez transacid said, on 2009-05-10 21:54:07+02:00: Hmm that may sound like a stupid question to you but why do you generate 2 keys, one for signing and one for encryption? Maybe i miss something their. Please enlighten me. Jonathan Thomas said, on 2009-05-10 22:35:52+02:00: The RSA key can't do both, so two keys are required.Anyway, thanks for this guide! Using Git in Ruby Applications - Scott Chacon :: tutorial, videos, articles, screencast to learn technology" This talk will demonstrate different ways you can use Git in your Ruby applications using Grit, the main binding library for Git in Ruby. A basic overview of how Git stores data will be followed by a few examples of using Git as a data storage mechanism in real life Ruby applications. Examples that might be shown include building a simple Git repository browser in Ruby, implementing a content distribution or ? These examples will be using the open-source Grit library which now includes an extensive pure-ruby implementation of Git, runs the popular Git hosting site GitHub and also powers applications such as Gitorious, Gitnub and git-wiki. About Scott Chacon Scott Chacon is the author of the Ruby/Git library, co-author of the Grit library (which runs GitHub), produces a free screencast on Git at www.gitcasts.com, is the maintainer of the Git Capistrano module, presented at RailsConf 2008 and blogs at jointheconversation.org
Fast Track Clojure Guitar Repair School | NJ Guitar Repair School Clojure Libraries ps3 - How to eliminate Rocksmith audio delay completely - Arqade What I've Learned About Making ClojureScript Applications With Pedestal Posted on by Tero Parviainen Pedestal is an interesting beast. It aims to provide tools for building single-page ClojureScript webapps with the simplicity and elegance we've become accustomed to in Clojure. I think there's some truth in both claims. The Promise of ClojureScript I've been playing with ClojureScript since the very early days, and even wrote one of the early Hiccup ports back when there were no idiomatic rendering libraries. However, I haven't really been able to make myself comfortable doing substantial ClojureScript applications. I think I understand now what my problem has been: Since there hasn't been anything that provides an overall architectural backbone for ClojureScript apps, I've been attempting to replicate the way I do things in JavaScript. Pedestal When Pedestal was announced, I was excited about the prospect. Although the general idea of Pedestal was exciting, it was really the following piece of code in the documentation that hooked me in: What Pedestal Is
Debugging with PTrace Jim Blakey Introduction Ok, we've all been there. You arrive at a client site, expected to solve strange and wonderful problems, some of which have been lingering unsolved for years. Usually there are no tools to use, no debugger, maybe even no original source code. What do you do? Well, that's why we get paid the big bucks, right? In this whitepaper I will discuss two little known tools that will allow you access into the inner workings of processes on unix systems. Did you ever wonder how debuggers work? Ptrace is basically a kernel hook into the task dispatch logic. The /proc filesystem is a pseudo-filesystem that is maintained by the kernel. Ptrace and the /proc file system exist on most Unix systems. This is not a tutorial. ptrace(1) And How To Use It Example Problem 1: The mysterious infinite loop Assume we have a client application that goes into an infinite loop. The following program uses the ptrace system calls to attach to the supplied target PID. results of the 'nm' command.
Clojure Cup 2013 All Stories by The "Game of Thrones" Roundtable - The Atlantic Game of Thrones' Hectic, Morally Complex, Crowdsurfing Season Finale Our roundtable on "Mhysa," the 10th episode in the HBO show's third season. Was Game of Thrones' Crazy, Bloody Showdown ... Underwhelming? Light Table 0.4 28 Apr 2013 Today, I'm proud to announce the 0.4 release of Light Table - go download it! A bit of the future. With this release our goal was to bring more people into the fold, to increase the number of languages we can eval, and to smooth out some of the core experience. After 0.3, we finally had a chance to move the ball forward some - from live modifying websites directly inside of LT to injecting code into NodeJS and showing matplotlib graphs inline. Next-gen web dev One of the things I originally showed in the Light Table videos was the ability to embed your work directly into Light Table itself. You can now stick a browser in a tab, navigate to any page you want and start live modifying it. The most requested language from our survey was Javascript by a fair margin and a lot of people were hoping for deeper JS integration. But the most powerful thing to me is the level of eval we now have. Oh and speaking of Javascript.. you can eval into a NodeJS process now too. SSssssss. The plan
The GNU Awk User’s Guide: Getopt Function 10.4 Processing Command-Line Options Most utilities on POSIX-compatible systems take options on the command line that can be used to change the way a program behaves. awk is an example of such a program (see Options). Often, options take arguments (i.e., data that the program needs to correctly obey the command-line option). For example, awk’s -F option requires a string to use as the field separator. The first occurrence on the command line of either -- or a string that does not begin with ‘-’ ends the options. Modern Unix systems provide a C function named getopt() for processing command-line arguments. When using getopt(), options that do not take arguments can be grouped together. Given a hypothetical program that takes three command-line options, -a, -b, and -c, where -b requires an argument, all of the following are valid ways of invoking the program: prog -a -b foo -c data1 data2 data3 prog -ac -bfoo -- data1 data2 data3 prog -acbfoo data1 data2 data3 optind optarg opterr optopt