No char** Attached Coding for fun, not EV.

26May/130

The hardest habit to kick when coding Python

Posted by Michael Souza

I like Python, and I can see myself loving it the more I use it, especially since it's great for when I need to write a quick script to do something. But whenever I'm coding Python, I find it particularly difficult to break the habit of terminating statements with a semi-colon.

Having spent most my personal, academic, and professional time coding in C-style syntax programming languages, terminating statements with a semi-colon has become less like a habit and more accurately like an involuntary reflex ingrained in muscle memory. I'm glad that the designers of Python decided to allow semi-colon statement termination as valid syntax, despite it being unnecessary and poor practice.

Alas, until I can completely suppress this "reflex" when I'm coding Python, I use the following command to strip out any stray semi-colons I may have accidentally left behind:


  • Facebook
  • Twitter
  • LinkedIn
  • Add to favorites
  • Email
  • RSS
17May/130

FindZilla GitHub Repository

Posted by Michael Souza

Last week I released the Chrome extension FindZilla that I've been developing on and off for the last few months. The experience was a great opportunity freshen up my JavaScript/ HTML5/ CSS3 skills, as well as utilize the JavaScript libraries jQuery and jQuery UI.

In the spirit of learning and transparency, I've open sourced the FindZilla code which can be found at: My GitHub Repository

It occurred to me while I was developing FindZilla, that privacy conscious users like myself may be curious about the permissions required by Chrome when installing the extension:

findzilla-permissions

Obviously, the wording of the two permissions that must be granted broad and vague. They describe potentially what an extension is capable of accessing, not necessarily what it does in fact access and how it actually uses the information it has access to. FindZilla does not transmit any information outside of its Chrome sandbox. Nor does it track searches you've made. Any data it stores is confined to the extension's local data storage (See Chrome Storage API) and is used to restore its state (i.e. when previously closed tabs are reopened), all of which can be turned off in the extension's options if you so please.

findzilla-options

Anyways, you don't have to take my word for it, check out the source code!


  • Facebook
  • Twitter
  • LinkedIn
  • Add to favorites
  • Email
  • RSS
12May/130

Check out my Chrome extension FindZilla!

Posted by Michael Souza

I've published the Chrome browser extension I've been working on, FindZilla, to Chrome Web Store.

FindZilla is a relatively simple extension that provides better "find in page" functionality than the built-in default Chrome feature. It offers case-sensitive and whole word matching options, as well as provides more accurate find results. For example, if you had a webpage with the text "ABABABA" and wanted to find all occurrences of the string "ABA". The default Chrome find in page feature would only match TWO occurrences of "ABA", but in reality there are THREE, which FindZilla correctly matches.

findzilla-toolbar

Any suggestions/ feature requests, comments, bug reports, etc. are much appreciated!


  • Facebook
  • Twitter
  • LinkedIn
  • Add to favorites
  • Email
  • RSS
16Apr/130

Sayonara Experts-Exchange!

Posted by Michael Souza

It occurred to me recently that my life has had one less major annoyance due to the death of Experts-Exchange!

Ok... Maybe not death, since the site still exists... But it's as good as dead to me. I can't recall the last time I've seen it in the top search results for a technical question or problem I'm having. With the advent of StackOverflow (and the StackExchange network in general), no longer do I find myself wasting time consciously avoiding Experts-Exchange search results, or facepalming because I accidentally clicked on a search result to a paywalled Experts-Exchange Q&A. Good riddance.

Interestingly, I found this related post.


  • Facebook
  • Twitter
  • LinkedIn
  • Add to favorites
  • Email
  • RSS
Filed under: Uncategorized No Comments
17Mar/130

Series of Tubes Reference

Posted by Michael Souza

I was reading through the Chrome extensions API, and came across this amusing reference to the (in)famous "Series of Tubes" speech by the now deceased former Alaskan Senator Ted Stevens:

chrome.storage is not a big truck. It's a series of tubes. And if you don't understand, those tubes can be filled, and if they are filled when you put your message in, it gets in line, and it's going to be delayed by anyone that puts into that tube enormous amounts of material.

I remember back in 2006 when this went viral, how quick I was to join everyone else in ridicule of the late Ted Stevens' metaphor/ wording. However, I must admit that my pro Net Neutrality bias led me to be a bit unfair. For a layman, it's an apt enough metaphor, as demonstrated by its reference in the Chrome extensions API documentation.


  • Facebook
  • Twitter
  • LinkedIn
  • Add to favorites
  • Email
  • RSS
Filed under: Uncategorized No Comments
9Feb/130

Why I can’t fully commit to Google Chrome…

Posted by Michael Souza

Over the last few years I've made a couple attempts to switch from using Firefox as my primary browser to Chrome.  Each time I've attempted to transition to Chrome, I've found myself crawling right back to Firefox.  Granted, I've been a loyal user of Firefox since version 1.0, and in the past have done my fair share of evangelizing its adoption to those willing to listen.  However, in the advent of Firefox's rapid release schedule, the last two releases (Firefox 17 & 18), drove me to give Chrome another try.  Why?  Because in the last several months I've been required to use another browser in order to properly use or view some website more times than I can remember in the span of the last ~9 years, all due to the latest release of Firefox breaking something that worked in the previous release.  Not cool.

While my latest attempt to fully transition to using Chrome has also failed, I'd like to note (as best as I can remember) some the reasons why each attempt failed:

First Attempt (2010):

  • Features & Extensions - When I first tried Chrome, there was a lack of built-in functionality or extensions which could completely replace the majority of extensions and features that I'd become so accustomed to using Firefox.

Second Attempt (2011):

  • UI Customization - I just couldn't get past the extreme lack of customization and extensibility afforded to extension authors and the user.  So while I could compromise and do without many obscure Firefox extensions that I use once in a blue moon, the limitations of where Chrome extensions can be accessed from (via browser action icons to the right of the OmniBar) posed a major annoyance if I have 5+ extensions I use on a regular basis.

Third Attempt (2013):

  • FTP Browsing - Although minor, my most recent attempt to transition exposed to me that the built-in FTP browsing functionality of Chrome is lacking in comparison to Firefox.  For example, the inability for me to sort by column (i.e. Name, Size, Date Modified).  It looks like I am not the only one that misses this functionality from Firefox.
  • Find on Page - Chrome lacks the ability to perform a case-sensitive search for words/ text on a page.  This might as well be a deal breaker for me, because I use this feature in Firefox a lot more than I realized.  Again, it seems that I'm not alone,  and that it doesn't look like it's on the radar to be implemented in the near or foreseeable future!

Alas, this most recent attempt has motivated me into starting a new project of developing Chrome extensions to compensate for Chrome's inadequacies.  More to come as I progress in the development of said extension(s).


  • Facebook
  • Twitter
  • LinkedIn
  • Add to favorites
  • Email
  • RSS
6Jan/130

Hello World!

Posted by Michael Souza

 


  • Facebook
  • Twitter
  • LinkedIn
  • Add to favorites
  • Email
  • RSS