Thursday, December 26, 2013

New Blog

I've started a new blog titled JeffComputes. Some of the old content from this blog has been ported over and all future content will be exclusive to the new blog. Thanks for reading!

Monday, December 2, 2013

Vim Highlight Shortcuts

Highlighting in Vim is super useful when trying to quickly see where something is being used. The following commands can be added to your vimrc file to make highlighting a breeze:

"{-- Commands to highlight the word under the cursor without moving the buffer
" view or cursor. --
" Case sensitive, partial match inclusive.
noremap hi :set hlsearch:let @/=''
" Case sensitive, no partial match.
noremap ho :set hlsearch:let @/='\<\>'
" Case insensitive, partial match inclusive.
noremap hu :set hlsearch:let @/='\c'
" Case insensitive, no partial match.
noremap hy :set hlsearch:let @/='\<\>\c'
"----}
" Command to remove highlighting.
noremap noh :noh

Sunday, November 24, 2013

Podcasts for Software Developers

Some great podcasts covering topics related to software development:
  • Ruby Rogues - The topics covered by this show are fairly broad and are applicable even if you are not a Ruby or even a web developer. For example, a recent episode discussed how to learn new skills as a developer. Conversational format; new episodes weekly.
  • Coder Radio - Topics tend to be fairly non-technical and mainly revolve around recent news, mobile development and contracting. Conversational format; new episodes weekly.
  • Hanselminutes - Scott Hanselman (well known Microsoft developer) interviews other developers in this podcast that covers a wide variety of topics. Interview format; new episodes weekly.
  • FLOSS Weekly - Each episode focuses on a single open source project. The majority of each episode consists of an interview with a programmer or lead associated with the project. Interview format; new episodes weekly.
  • Programming Throwdown - Each episode covers a single topic such as a specific programming language or technology. The discussion is kept fairly high-level and provides a good overview of the topic. Conversational format; new episodes monthly.

Saturday, November 9, 2013

Vim Plugin Picks

The following are a few Vim plugins that really boost productivity with this fantastic editor:
  • EasyMotion - Makes moving to a specific location a breeze; see it in action here.
  • Buffet - My favorite plugin for moving between open buffers.
  • CtrlP - Quickly open files within a project directory structure via fuzzy search.
  • FuzzyFinder - Fuzzy searching for buffers, files, tags, etc.
  • MRU - Simple plugin that shows a list of the most recently used files.
Quick note on using CtrlP with Fossil, modify the g:ctrlp_root_markers variable to include '_FOSSIL_' (and '*.fossil' if repos are kept locally with that extension). Now you can easily jump to any file in the open repo.

Wednesday, May 8, 2013

Parsing with Parsimonious

Recently I've been playing around with a parsing library for Python called Parsimonious. So far, I've been very impressed with it. Examples can be a bit hard to find; the following is a simple CSV parser:


The resulting output is the following:
{'gender': 'male', 'age': '26', 'name': 'Bob'}
{'gender': 'female', 'age': '30', 'name': 'Kim'}
{'gender': 'male', 'name': 'Joe'}

Friday, April 19, 2013

Hidden Fossil Features

The Fossil version control software has a few cool features that are somewhat hidden:
  • RSS Timeline - Add .rss after a project's timeline URL to get an RSS feed; example.
  • Link To Line Number - Add ?ln= to an artifact's URL to link directly to a given line number; example.

Friday, March 8, 2013

Thoughts on the PS4 Specs

The news broke about Sony's next-generation console last month. As expected, it will officially be dubbed the PlayStation 4. Unlike the PS3, the new console architecture closely resembles a typical gaming PC. The system will sport an 8-core AMD Jaguar CPU along with 8 GB of GDDR5 RAM and a next-gen AMD Radeon GPU.

Sony seems to be taking a safe route with this console. The PlayStation brand has had a history of being difficult to develop for, however, Sony is clearly focused on improving the process with this console iteration. Just take a look at the press release announcing the console; the very first section is titled "Gamer Focused, Developer Inspired" and touches upon the system's "ease of development". Good move Sony!

The 8 GB of GDDR5 RAM stands out as a major boon for game developers. Consider for a moment that the PS3 only had 256 MB of RAM, imagine what developers will be able to accomplish with a 32x improvement in memory. Additionally, the GDDR5 used by the PS4 will have a memory bandwidth of 176 GB/second compared to the 25.6 GB/second of the PS3.