iTerm2 color profile

Comments Off

I just finished a new iTerm2 profile I call ‘justright’.

It’s a dark theme. The black isn’t black, it’s a darker gray. The white isn’t white, it’s a light gray. The colors are vivid, but not overbearing.

Screen Shot 2013-05-16 at 12.44.02 PM

You can download it here:
justright.itermcolors

Interactive Coding Tutorials

No Comments

Clojure

http://tryclj.com/

Haskell

http://tryhaskell.org/

Knockout.js

http://learn.knockoutjs.com/

ArangoDB

http://www.arangodb.org/try

MongoDB

http://try.mongodb.org/

http://tutorial.mongly.com/tutorial/index

MongoDB Interactive Geospatial Tutorial

http://tutorial.mongly.com/geo/index

Python

http://www.learnpython.org/

http://www.trypython.org/

R

http://tryr.codeschool.com/

Regular Expressions

http://regexone.com/

Redis

http://try.redis-db.com/

Ruby

http://tryruby.org/

Scala

http://www.simplyscala.com/

SQL

http://sqlzoo.net/

Thanks to http://www.ctothoughts.com/2012/07/interactive-programming-tutorials-net.html for the leads on a couple I didn’t have.

Public Datasets

No Comments

Here is a list of resources I’ve found for publicly available datasets:

 

Someone asked the question on Quora, and here is what was answered: http://www.quora.com/Data/Where-can-I-get-large-datasets-open-to-the-public

 

Air Quality Notifications http://feeds.enviroflash.info/

Aircraft Situation Display to Industry (ASDI) http://www.fly.faa.gov/ASDI/asdi.html

The Center for Innovation in Engineering and Science Education Real time data sites http://www.k12science.org/realtimedatasites.html

Real-Time Space Weather Data Sources http://space.rice.edu/ISTP/#RT

Open source data tools

No Comments

A list of useful free or open source data tools:

datasciencetoolkit.org

 

MongoDB Interactive Tutorials

No Comments

In learning MongoDB, I’ve been constantly on the prowl for useful tutorials. Here are three interactive tutorials that teach the basics of MongoDB.

Try MongoDB
http://try.mongodb.org/

The MongoDB Interactive Tutorial
http://www.mongly.com/tutorial/index

MongoDB’s Geospatial Interactive Tutorial
http://www.mongly.com/geo/index

Ruby Conferences

1 Comment

This is my little list of Ruby or Ruby-related conferences:

http://rubyconf.org/
RubyConf is the official International Ruby Conference. Founded in 2001, RubyConf has provided an annual venue for the ever-growing Ruby community to meet face to face to share, collaborate, and socialize.

http://www.rubynation.org/
RubyNation is an annual two-day, dual-track technical conference presented by the Washington, DC area Ruby Community. The next RubyNation conference will be held April 1-2, 2011, at the Sheraton Hotel in Reston, VA.

http://mtnwestrubyconf.org/

MWRC is a two-day single-track conference for just $100. Come rub elbows with some of the smartest Rubyists in the world.

http://sunnyconf.com/

One year ago, a regional Ruby conference in Arizona was just an idea between friends who wanted to support the local Ruby developer community. In late November, volunteers met for the first time over coffee, and on Saturday, September 25th 2010, Arizona hosted her first regional Ruby conference: SunnyConf.

http://en.oreilly.com/rails2011

RailsConf, co-produced by Ruby Central, Inc. and O’Reilly Media, Inc., is the largest official conference dedicated to everything Ruby on Rails. Through keynotes, sessions, tutorials, events, and of course lots of hallway hacking, RailsConf is the meeting place for the Ruby on Rails community.

Real Software Engineering

No Comments

The other day I watched a great presentation about Software Engineering from Glenn Vanderburg, of InfoEther. The term software engineering is often met with criticism. Is developing software really an engineering discipline? Isn’t engineering more about calculus? And what about all those software projects that fail? If building software is an engineering discipline, many people are surely doing it wrong. Vanderburg also addresses the waterfall process, where it came from, how it rose in popularity and why it so frequently produced late, misguided or failed software. He describes how modeling relates to engineering and software, and why and when it should be used.

Vanderburg sheds light on the the engineering process. He discusses how software is very different from some traditional disciplines, but very similar to others. He also talks about methods that are being used in the software development industry today that provide customers with working software that functions as it should, is delivered within budget, and does not require endless documentation. The question he asks is “why do we use the term ‘software engineering’ as a definition for a practice that doesn’t work.” This video is a must see if you ever see yourself working with software development (whether from the development or the management side).

http://confreaks.net/videos/282-lsrc2010-real-software-engineering

If anyone doubts the validity of what he says in his speech, it is worth noting that InfoEther (the company in which he is a partner) was recently purchased by Living Social for a large (undisclosed) sum. http://infoether.com/livingsocial

Form hints or textbox default values

No Comments

So recently I had the need to save space in a web application I was building. Each of the forms had a label above each field. I had seen applications where they place hints in the form fields that disappear when you click on them. This seemed like the best solution for me so I set out to figure out how to do it. I knew it was done with javascript, so I searched for terms like “text field default value”, “textbox default”, “form field default”, and finally stumbled upon “form hints”. I found a great example of how to do it using jQuery in SitePoint’s book, “jQuery, Novice to Ninja”. SitePoint is a great resource for up-to-date, technical resources. They have tons of detailed tutorials. So, how did I do it? I’ve attached and html file that contains all the code here: [download id="1"]

Step 1: install jQuery in the head

An easy way to do that is to use Google’s code hosting. Paste this bit of code in the “” of the html doc. This will include the jQuery library.

Step 2: add a “value” to each of the inputs


Notice I gave my input the value of “Name”

Step 3: add the class “cleartext” to each of the inputs


This is how jQuery finds the input fields it is going to modify.

Step 4: add some css for the form hint text

Again, this should ideally be added to the external style sheet, but to simplify things, I have placed it inline.

Step 5: add the jQuery code

Best practice is to include this in an external file (e.g. form_hint.js) but I have placed it inline for simplicity.

This is what happens. When the page loads, jQuery goes to each of the inputs that has the “cleartext” class and stores the value in memory (as the default value).
Then it adds the class “inactive”. This makes the text inside turn gray (per our css).
Next “.focus” (when someone clicks on the textbox) we remove the class “inactive” and set the value within the text box to “”, an empty string.

The “.blur” function does the opposite. When you leave that box, it checks to see if there is anything left in the box. If it is empty, it adds the class “inactive” and places the default text back in the box.

Simple as that. jQuery does all the heavy lifting and we write much less javascript.

Again, you can find the code for this tutorial here: [download id="1"]

Install MySQL linked server in SQL Server 2008

No Comments

I completed a successful installation of a MySQL linked server on a SQL Server installation recently. It a bit tricky unless done completely right.

This link was extremely helpful.

http://www.ideaexcursion.com/2009/02/25/howto-setup-sql-server-linked-server-to-mysql/

SQL Server 2008 Merge Update or Insert

Comments Off

This is a statement I used to merge data from a remote MySQL database, linked to a SQL Server 2008 database
I am comparing the fields and merging all that have an identical date of birth and first name. MYSOFTSYS is the MySQL database (People is the table).
—————————–
MERGE People AS p
USING
(
SELECT FirstName, MiddleName, LastName, ANumber, ModDate, PrivacyHoldIndicator, Dob
FROM MYSOFTSYS…People
) AS op
ON (op.Dob=p.Dob AND op.FirstName=p.Firstname)
WHEN MATCHED THEN
UPDATE SET
p.FirstName=op.FirstName,
p.LastName=op.LastName,
p.MiddleName=op.MiddleName,
p.ANumber=op.ANumber,
p.ModDate = GETDATE()-1,
p.PrivacyHoldIndicator=op.PrivacyHoldIndicator,
p.Dob = op.Dob
WHEN NOT MATCHED THEN
INSERT (FirstName, LastName, MiddleName, ANumber, ModDate, CreateDate, MillenniumID, PrivacyHoldIndicator, Dob)
VALUES (op.FirstName,
op.LastName,
op.MiddleName,
op.ANumber,
GETDATE()-1,
GETDATE()-1,
1,
op.PrivacyHoldIndicator,
op.Dob
);
—————————–

Older Entries