LinkedIn Launches Volunteer Marketplace, Adds Unpaid Work To Its Recruitment Platform, Posting For A Fee



Ayo Sogunro

Before You Proceed

Two guiding premises underlie this article. The first is this: this article does not support or reject homosexuality as a sexual orientation. The purpose of this article is not to plead the cause of homosexuality as a lifestyle—there are many who have done that, and this is no place to rehash the argument. This article instead recognises the existence of homosexuals as a distinct sub-culture—a minority, if you prefer—within a larger culture, and is concerned, instead, about a philosophy of hate and prejudice against this minority which is about to be set in motion in the guise of legislation.

The second premise is this: that you, the reader, are not entrenched in some belief system that supersedes any attempt at reason. And so, this article is not for those who rely on prejudice, and by “prejudice”, I mean the bigots, the fanatics, the fundamentalists and all those…

View original post 1,984 more words

Dev links #3

  1. CSS guide from
  2. Technical limits of Google Fusion Tables (max. 5 layers)

Aside: I’m unhappy with the current incarnation of DawgTransit. It is the very definition of hacked together and it was my very first “big” web application. So, in the time honored tradition of developers everywhere, I’m embarking on a re-imaging/overhaul of the site. I *just* got started so I don’t have anything major to show. 

The first change to happen will be an overhaul of the homepage. Based on the stats (h/t, most people arrive at by searching for specific bus routes which often leads them directly to the specific bus route page. So, the screenshow below is an example of an interface that will allow the focus to be on the bus routes.Image


For displaying information about the routes, I would like the map to be the focal point of the page and I’ll be working on some ideas for that. 

New year!

A belated “Happy new year” greeting to all! 🙂 The fall & holidays are always a bit … somber for me. My introverted self comes out to play and I end up ‘falling off the planet’ for lack of a better word. I don’t want to make this a “personal” blog but I find that I work best when I have an outlet to vent. So there.

I don’t have any dev links but now that I’ve broken the seal on the blog for the new year, expect irregular postings from me. Mostly technical(-ish) material but there’ll be the occasional housekeeping post.

Aside: I found out from a classmate (Lindsey Cook) about Delicious’s end of year recap. It’s the only 2013 recap that made me feel good about myself. Not sure what that says about me. Here’s my profile (top 2% in tha house! :))

This is the first semester in close to 3 years that I haven’t taken a Computer Science class. I’m having a bit of withdrawal but I’m sure I’ll find something to take my mind off things.

My last post talked about my Chrome extension (TweetPuller). Well, I fixed the Twitter oauth issue and it’s back on the Chrome Web store so go check it outUGA Course Picker is in a state of limbo. It’s functional but I can’t summon the enthusiasm to work on it anymore. I made my Trello board (for managing features for the class scheduling application) public just for kicks (it’s no where near organized but it’s helpful for me to write down ideas for the site as time goes by).

I took a leap of faith and volunteered to assist a group of strangers with a project they are working on. It involves PHP and a CMS with an Android app in the roadmap. It should be an interesting experience especially since I’ll be in a group again! All my side projects have been solo projects and I’m a little tired of going solo. Hopefully, working in a group of equally hungry students will spark my creative juices. 🙂

Dev links #2

  1. XmlHttpRequests via Javascript
  2. HTTP requests using PHP
  3. Base64 encoding/decoding in Javascript
  4. Getting installation date of an app (Android)

I’m attempting to resuscitate my TweetPuller chrome extension to use v. 1.1. of Twitter’s api. So far, I’ve created a PHP script to retrieve the needed access token and calling out to that in order to prevent exposure of my consumer key and/or secret on the client. So far so good. 

Oh and merry Christmas! 🙂

Dev links and sweet finds

  1. Personal Blocklist: An extension from Google that lets you block certain sites. *cough*w3schools*cough*
  2. ThreeDubMedia‘s collection of jQuery plugins for implementing dragging & dropping functionality via jQuery
  3. draggable.js is another simple plugin for jQuery that lets you drag and drop stuff.
  4. yet more plugins that help you drag and drop stuff!

Enjoy! 🙂

Stashing stuff in localStorage and other dev links

  1. Hiding tt-hint when using typeahead: This is useful because when using typeahead, the top hint for a query is on automatically. There’s no option to turn this off so a workaround I found online was to set the font size to 0 and turn off the visibility for the .tt-hint class.
  2. Using transitions: Since I just learned how to apply (basic) transitions, I’ll abuse them for a few weeks and then forget about them. I’ve been bad about providing feedback on actions in my web application so I’ll be applying my new found power liberally. 🙂


In the latest version of CoursePicker on the web (v2), I decided to add a bit of flair to the application by mapping the building numbers to actual building names. By default, the building numbers are provided with sections and for me, it has always been a pain to find a section I’m interested in and then have to go to the UGA Campus Mapping application to find out the building details. So, I set about finding a document that contained the mapping of building numbers to the actual building names. My first hit turned up a service (I think it was Scribd) which wanted me to pay to view the list. Well, don’t be fooled into paying money for it! There’s a UGA Building Index document for free here and I used the free Nitrocloud online pdf conversion service to export the pdf to a csv file. Once I had a csv file, it was trivial to format the file into a valid JSON file. If you’re new to JSON file formats, you want to bookmark and this JSON Formatter & Validator.

So, for use in my application, I was essentially loading the JSON file from my webserver on every page load and wasn’t “caching” it anywhere. Granted, my web traffic is minuscule but I want to actually learn good practices. So, today, I decided to revisit my naive implementation and rediscovered localStorage. This JSON file is fairly static so I am not too worried about the information being out of date although I may need to specify an expiration date manually (I learned that the expiration date of items in localStorage is really up to the user). There’s lscache by Pamela Fox which uses localStorage but allows you to specify expiration dates, etc. I could also use cookies to store my data, etc. 

I went with lscache because it was easy enough and it works for now. Here’s the localStorage way to store stuff:

if (localStorage.getItem("uga_buildings") === null) {
$.getJSON("/uga_building_names.json", function(data){
var uga_buildings = data;
localStorage.setItem('uga_buildings', JSON.stringify(data));
console.log("stored list of uga buildings in local storage.");
var uga_buildings = JSON.parse(localStorage.getItem("uga_buildings"));
console.log("retrieved list of uga buildings from localStorage.");

The emphasized text is emphasized because you can only store strings in localStorage. So, you need to convert your object to a string (JSON.stringify) and when retrieving your object, you convert it back to the original form (JSON.parse).

You can check out the source code for CoursePicker here. As always, bug reports and pull requests are welcome! 🙂