Categories
News Programming

js-url: small library for parsing out parts of URLs

This will come in handy. You pass in a full URL and quickly pick out all the parts.

websanova/jquery-url · GitHub

url() – A simple, lightweight url parser for JavaScript. Also includes a jQuery version of the plugin that can be called via $.url() with all the same options. If you’re already using jQuery it may be better to use the jQuery version to avoid namespacing issues.

Enhanced by Zemanta
Categories
News Programming

Bountify is like Fiverr Times Fifty

Bountify | Crowdsource small coding tasks

Got a tough coding task? Post it here with a cash bounty ($1-250) to incentivize your fellow hackers.

Categories
Programming

Stubborn FAT32 Boot Partition Stops Ubuntu From Booting

Variations on Precise Pangolin - 1 (+ brandmark)

My old HP Core Duo Ubuntu server bit the dust last week. Seemed like a PSU issue since it booted once and ran OK for 10 minutes, but sadly, the oddball PSU in this HP case has no easy replacement. No, it’s not a normal ATX12V PSU. Whatever–a suitable replacement, must faster, was had via NewEgg. It threw me for a loop for a few hours, though. I installed Ubuntu 12.04 LTS with no issues, but then the damn thing wouldn’t boot unless I left the USB key in.

So, this seems like a known issue–use boot-repair, yadda yadda–but no, this seems to be something different. I thought I might need to mess with gparted, but I didn’t make a boot partition and I didn’t convert to non-GPT. I noticed in gparted that I had a first /sda1 partition that was FAT32 and flagged for boot. I’m thinking this was a recovery partition for this little Acer box that came with Windows 7.  Well, I wiped all the partitions and re-ran the Ubuntu install. Joy! It got the partitions right and boots on its own.

Enhanced by Zemanta
Categories
News Programming

Facebook Apps Still Not Serving SSL

Almost two months ago, Facebook added a setting for browsing with an SSL connection. So far, most app developers have not yet caught up.

It’s simple. Go to Account->Account Settings->Account Security->Secure Browsing and click a checkbox.

 

Option for using https "whenever possible"

 

After saving, your Facebook experience will all flow over SSL, every byte encrypted with a 128-bit key. But fire up your favorite game, and you will probably see a request to turn this setting off.

Dialog displayed by apps that don't support SSL

If you click the continue button, you might expect that you’d be temporarily allowing an unencrypted connection. Instead, your setting is turned off. When you’re done with CityVille, you will have to switch it back on again. I’m sure Facebook will improve this user experience over time.

When Facebook rolled out this feature, they added a new setting for app developers that asks for the URL to the secure version of their app. It starts out blank, and when it is blank, the dialog above shows up. Naturally, I wanted to get things right, so I began experimenting. Unfortunately, once you have a valid value, you can’t return to having it be blank. Now I was forced to solve this somehow.

Time for a short diversion into how HTTPS works.

You know how you can have one server hosting multiple domains, each with their own site content? It’s called virtual hosting, and it’s a standard feature of Apache. The way it works in the HTTP protocol is that when your browser connects to the server, it uses the IP address (e.g.192.168.1.1) and in addition to asking for the document to view (e.g. GET /index.html) it also specifies the domain name (e.g. www.18int.com). Apache’s configuration knows where the files on the server are for that domain, and away we go.

In the case of a secure connection, your browser and Apache must exchange keys to be used for encrypting data. Your browser will also ask for proof of identity from the server. The proof is in a small file called a certificate. It’s only good for one IP address and one domain. You can make multiple certificates work if you have multiple IPs. A certificate signed by an authority is a few hundred dollars, but IPs are scarce. It’s a gigantic pain in the neck for a small developer.

If you have multiple apps running on Facebook, you could reorganize them on the server to use subdirectories instead of subdomains. For both canvas apps and iframe apps, the user is hardly exposed to your backend URLs anyway. In the short term, I’ve made a single page that says the following.

We’re sorry! This app does not function when requested via ssl. To access this app, please change your facebook settings under Account->Account Settings->Account Security->Secure Browsing.

Then I pointed all of my SSL URLs at it. Note that I this page is served up using a self-signed certificate. It’s interested that Facebook doesn’t care to enforce the identity check but they do care that the data is send via SSL end to end. That’s reasonable.

Instead of reorganizing all of my files on the backend, I plan to rebuild my apps so that they work outside of the Facebook canvas, using the Facebook Connect feature instead. Facebook seems to be doing what they can to push everyone off of the canvas, anyway.

It’s also interesting that most of the games I’ve tried still show the request to switch off SSL. The popular Zynga games do. I found that Golden Nugget Vegas Casino, run by one of my clients (AltEgo), does serve up with SSL. Smart.

Recently, Twitter added a similar feature to always use HTTPS, but I wouldn’t expect any issues like we have with Facebook because Twitter never got into the business of piping content from apps through their own servers.

Enhanced by Zemanta
Categories
News Programming

Facebook’s @Mentions Works in Comments Now

 

Screenshot of using the @mentions feature
Screenshot of using the @mentions feature

Do you use the @mentions feature in your status updates? If you type @ and immediately start typing a name, Facebook will suggest friends. Click on one and the name is inserted as a link. The friend will be notified and more likely to notice. Until now, this only worked in your own status updates. It now works in comments on anything posted to a news stream.

Unfortunately, the @mentions feature does not work when updating status via the Graph API. Apparently it did at first, but app makers immediately used it to spam everyone with notices. Facebook yanked it. I would have preferred that they limited notifications similarly to how they limit how many news stream updates can go out in a certain time period.

In addition to mentioning people, you can also mention pages and apps.  Many of the things you “like” in your profile have underlying pages. If you’re mentioning a band or a movie you enjoy, try using the @mentions feature to make it easy for readers to find out more.

Enhanced by Zemanta