Monday, June 3, 2013

Remove The Feedly Icon From Chrome

Annoying Feedly IconI love Feedly. I use it on all of my devices. But unfortunately, the Chrome App extended its boundaries and decided that I needed to see the Feedly icon on every website I visited.

It shows up on screenshots, on printed pages. It hinders my ability to fluidly browse the web. So I decided it was time for it to go.

I already have AdBlock Plus installed for Chrome, so I set up my own filter to remove the <img /> tag that the Feedly App inserts at the bottom of every page.

On any page where you are able to see the annoying Feedly icon, left click on the AdBlock Plus stop sign. Then click on 'Easy create filter'.  Next you can click on any element on the page; you can try clicking on the Feedly icon (that should actually work to remove it for you).  Then just paste in the code below, and after clicking Add, you should never see the Feedly icon again!*


###feedlyMiniIcon data:image/png;base64,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

* If anyone is adding this rule from the AdBlock Plus options menu, then you will likely not see the expected results. This is because the entire rule was added as 1 line. To add from the options menu, skip the line starting with '###', and start copying from 'data:'

Thursday, May 30, 2013

Klout Dashboard

It looks like Klout needs to work on parsing Facebook JavaScript objects.

Tuesday, May 18, 2010

Facebook and Other Social Netwokring on Communication Skills

     As technology has continued to improve at an exponential rate, the internet has become a tool that no one can go without. Much of this increase in time spent online can be accounted to social networking sites such as MySpace and Facebook. These sites have become so trafficked that they have had a profound impact on the communication skills of our nation's youth. Teens who use these websites extensively lose their ability to communicate at the same level as teens of past generations.
     It was only four years ago that Facebook finally decided to completely open its doors to everyone who was in, or has passed, high school, where previously there had been a more strict age requirement. With this change, the status symbol of pre-teens graduating from middle school and entering high school became their Facebook accounts. After four short years, of completely opening up their system, Facebook has become the most visited website, falling short only of Google. After "an increase of a whopping 82% over [the last year]," (Scott) Facebook users in the US now log over 1 billion hours on the site per year. Such a dramatic increase is not solely a product of kids taking time away from homework, the use of Facebook has branched out to now interfere with time that could be spent in face to face communication.
     Many proponents of the online social networking websites would suggest that because of the increased time spent on these websites, and subsequently the increased amount of communication, the community has overall improved its skills and quality of communication. Referencing the line "practice makes perfect," they state that their increased communication has given them more time to develop their skills and are therefore better at communication. This is a blatantly incorrect analysis. Though the quote used is a perfect analogy to the situation at hand, the group of extensive users is in no way increasing their communication skills. The quality of conversation of these websites is so diminished that the extended amount of time spent is in fact retracting from the skills of these kids. This is parallel to a soccer play sitting on a park bench, kicking a ball between his feet. Sure he is practicing soccer, in the sense that he is moving the ball with his feet. However, no sensible person would argue that he is better off continuing his current drill, rather than playing in a game to improve his skills.
     This past argument is agreed upon by everyone. The confrontation really lies in the use of "diminished" in the past statement. Is the communication going on online really of a lesser quality and necessitating a lesser skill set then offline communication? This is what is at the heart of the debate.
     In defining communication, there are a few factors that need consideration. First, one needs to analyze body language. How a person carries themselves during conversation. Second is the use of correct grammar and proper diction. Whether or not the speaker chooses words that correctly exemplify the meaning they want to get across, and whether or not grammatical rules are followed. The third factor going into communication is the speed of the conversation. When in a discussion or talk, participants only have at most one second to respond to what was previously said with a well thought out response. The final facet of good communication, and arguably one of the most difficult parts to master, is the ability to carry a conversation, and to cultivate meaningful topics of discussion. These are the elements that go into determining the quality of communication. As teenagers spend more of their time behind the computer screen instead of face to face with their peers, all of these skills will be negatively impacted.
     When talking in person, all participants must show proper body language. This includes looking others in the eyes, sitting up straight, not getting distracted, and maintaining positive and engaged facial expressions. These are the types of things that parents reprimand children for when they are younger, and it is during teenage years, that these skills are solidified. This is a clear cut example of how Facebook negatively affects these teenagers. Facebook's wall posts, and IM client do not require any sort of visual interaction between any of the participants. This gives all participants free reign to look and act however they please, and to never practice any of the proper body language techniques. As a result, kids now are much less adept at conversation mannerisms which to parents who were taught these mannerisms as children, see it as a sign of disrespect rather than a lack of knowledge on the part of the teens. This has caused a social gap to appear between those who have had access to these new technologies as teenagers, and those who have not.
     People who disagree with this analysis of the situation at hand argue that although it is true that teens are less adept at face to face conversational mannerisms, it no longer matters. As life is driven into the twentieth century, the new explosion of technology and 24/7 connectivity to the rest of the world has given everyone more time to communicate behind the screen of their respective technological devices than would be possible with solely in person interaction. Now that we have removed the necessity for face to face interactions, there is no reason why body language should remain an intrinsic value in our society.
     Although it is true that these devices have removed most of the necessity for in person interactions, this is no reason to completely disregard them, and to subsequently ignore body language in these types of meetings. Humans need social interactions to survive, and many will go insane without it. A completely online lifestyle does not fulfill this need of human interaction for most people. Another point to the contrary of the opposing sides statement is that there is still a great deal of face to face interactions that go on daily, that currently could not be replaced with technological devices. Therefore we cannot replace or disregard the value of body language in our culture.
     A seemingly less pressing issue than the previous example, diction and grammar have always been a shortcoming of the teenage population. However, there is still an undoubted decrease in correct word choice and language usage. Most people type less than half as fast as they can talk, and now that many teens do the bulk of their communication online, one would ponder how they make up for all of the lost speed of conversation. Kids of this generation have attempted to make up for this lost time by cutting corners in the grammatical correctness of their conversations. They have utilized newer, more creative ways of shortening words, phrases, and sentences. With the ever-growing dictionary of abbreviations, the teenage population is slowly degrading communication all throughout America. Not only is has the teenage community ostracized itself by coming up with such slang, but still within the general teenage population, there are more condensed groups and cliques that use and even more specific set of lingo dedicated to their group. This is yet another case where "practice makes perfect" comes into play, but here, sadly, the result is anything but perfect. These teens who's original intent was to shorten the amount of typing necessary, as to encourage speedier online conversations, ended up using their own terminology so much that it has become engrained in their brains and now comes out repeatedly in face to face conversations. It is this usage in daily in person discussions that proves the negative effect Facebook and other such websites have on grammar and diction.
     On the opposite side of the argument is the idea that this radical change in diction and grammar should not be looked upon as a disrespect for the English language, but rather, as a step in the evolution of our language into a newer form of communication. These people make claims that it is to the likeness of looking back on dialogues from the 1600s and seeing how much communication has changed today. Language has always evolved, it is a part of the natural way of life, and those for this argument agree that this is only another small step towards yet another drastic change in modern language.
     I will concede that you can relate this change in modern day language to that of the change from Shakespearean times English to the present day language. However, there exists a large difference in these otherwise parallel comparisons. The vast changes from the 1600s took place over a span of four hundred years, while this current language revolution has come upon us in less than two decades! Evolution, whether it be of language or of living organisms, has been shown to take place over vast periods of time, greater than any humans lifespan. So the claims made about this change in language being another step in evolution are purely fallacy. These changes in teenage communication are no more the product of language evolution then they are of nuclear radiation to the brains of teens.
     In an interview with Mark Wang, during his dissection of online social networking's effects on present day communication skills in teenagers, he stated that these websites were causing a great "lack of face to face conversation" which was giving these teens and unfair disadvantage against those in previous generations. He specifically cited that this lack of real world communication led to an "unrealistic amount of time to think for a conversation." This is a very valid observation. Online, it is not expected that teenagers reply in a conversation very fast. Many will take great deals of time, crafting their responses ever so carefully, to send just the meaning they want. This buffer time, available to revise and edit all of your dialogs before they are sent, is not available in face to face conversations. Once you say a word, you cannot magically erase it from being heard. And likewise, you don't have this open ended amount of time to think of the best way to phrase something. This intense change from online to offline communication has slowly worn away at teenagers ability to respond in a timely manner in real life conversations. Instead, taking more of their time to think of a fairly simple response that should have been recited on impulse.
     Opponents to this idea will argue that this is not a valid point because conversations online are of a completely different nature than those that go on offline. Conversations online largely revolve around gossip and other such topics, while offline there are much more in depth conversations.
     This alone is a separate topic of discussion, however, this claim is still false. Habits are formed by repetitive actions, and it is undeniable that these teenagers are repeatedly taking their time to respond to their friends and families electronic messages. Whether or not the type of communication is different, the brain is associating conversations with this atypically large amount of time in which it has to think of an answer. It is this that carries over into face to face conversations. Another flaw in their counter-argument is that if offline conversations were mostly more in depth, and online conversations were just about gossip, then it theoretically would be easier to be involved in a conversation online than offline. Therefore teens should not have a problem with keeping up with offline conversations, however, this is not true.
     On the separate issue of what is being conversed about, there is the question of what the vast majority of conversations online revolve around, and whether or not that has impacted teenager's ability to come up with meaningful topics conversations. Most of online communication that goes through social networking websites such as Facebook and MySpace can be generalized to forms of gossip. Just the spreading of information about who did what in school today, and other such topics. This in the writing community as well as in conversation, is not looked upon as meaningful topics of conversation. Topics that are given merit in conversation and writing are new advancements in technology, world politics, and other more cultured areas of discussion. Now that teens are spending such a great deal of time online, there are getting less and less exposure to these meaningful topics of discussion. Which translates to an inability to continue a conversation when talking about non-gossip in real life situations. Teenagers are finding it progressively more difficult to have full out conversations with peers and adults alike, that do not touch on gossip.
     A completely separate facet to this entire debate then the act of communication itself, is the idea that multitasking is encouraged by social networking websites and has a proven negative effect on one's ability to perform seemingly simple tasks at the same level of quality as if they had not been multitasking. Facebook has one of the most highly used internet messaging systems in the world. Whenever you are signed on to Facebook, you can immediately see which of your friends are online, and which are not. Those that are online, you can chat to in real time. This chat system differs from real life by allowing you to open up as many conversations as you want to concurrently. And you can do all of this while still browsing the rest of Facebook. The ability to run all of these tasks at once from one website has led to intense multitasking in the everyday lives of teenagers. The idea that multitasking is not good for your ability to accomplish tasks is not a revolutionary concept, it has been around for decades, however, this new online revolution is pushing the envelope to never before seen limits. Kids are now trying to focus on three conversations, looking at pictures of their friends, watching TV, and all while trying to complete their homework assignments. These new levels of multitasking encouraged by these online social platforms has had detrimental effects to teenagers ability to efficiently focus on one task, and to complete any task with as high a quality job as if they had not been prone to multitasking.
     Those on the opposing side of this argument do concede that multitasking is encouraged by these social platforms, and that multitasking has proven detriments to it. However, they argue that these deficits are vastly covered by the platforms ability to connect you with people whom you wouldn't have ever been able to connect with before. This added layer of connect-ability has essentially re-written the six degrees of separation rule. Now everyone, in fact, is one Google, Facebook, or Twitter search away from any other person in the world. This new and unusual ability to be connected to any person in the world is a more than worthy trade off for increased multitasking, and secondarily, lowered performance on everyday activities.
     This is a incorrect evaluation of the capabilities that online social networks have provided. Worldwide connect ability and multitasking do not necessarily depend on each other, nor are they mutually exclusive. They can both exist in their more useful state at the same time, which would be the best case scenario. Giving people the ability to connect with anyone on Earth at just the click of a button, while not distracting people and making it harder to perform quality work because of the burdens of multitasking.
     The positives of online social networking are indisputable. It provides a tool for massive social interaction between many people that you would otherwise not know of or be friendly with. It plays host to some of the most helpful collaboration and planning tools available. It also is great of its organization and data storage. However, with its positives, come many negative repercussions in the way of reduced communication abilities. People using online social networking lose some of their good body language, proper diction and grammar, ability to respond in a timely manner, and some of their ability to come up with meaningful topics of conversation. Teens who use these websites extensively lose their ability to communicate at the same level as teens of past generations.

Citations:
  1. Scott, Greg. "Survey Says: Global Time Spent on Social Media Surges." Web log post. Drop Ship Access. 25 Mar. 2010. Web. 5 Apr. 2010. .
  2. Wang, Mark. "Social Networking Impact." E-mail interview. 7 May 2010.

Saturday, May 8, 2010

Google Code Jam

Google Code Jam is upon us, the Qualification Round has begun, with roughly 16 hours left to complete at least one of the three questions completely.  There are at least 4000 contestants who have made it passed the qualification round so far.  I'd predict there to be between 6000-8000 people who make it through the qualification round by the end of the 24 hours.

The three questions this year are of varying degrees of difficulty.

The first, "Snapper Chain" deals with trying to figure out if a certain light will be turned ON after a certain number of snaps (working just like a clapper), the catch is that there can be an infinitely long chain of these snappers, so the 2nd one would only turn ON, if the first one is already supplying it power.  Many people can see pretty quickly that this breaks down mathematically to a very simple power of two equation.

The second question "Fair Warning" is, in my opinion, the hardest of all three questions posed.  For this you, you are given a certain number of events that occured in the past, and the number of seconds ago that they occurred.  The task is to find  a singularity point for all of these events at the current time or at X seconds in the future.  The singularity is the point in time where all the events time in the past is factor able by the constant T.   The catch is that you want to find X based on the maximum value of T.
As this is the hardest and took me a few minutes to conceptualize, let me offer a tip on how to think about this problem and where to get started.
Lets say I give you two numbers   100 and 200.   If I asked you if 150 could possibly be a factor of both of those numbers you would say no.  The reason you would know that is because the difference between those two numbers is less than the factor I gave you...
This is the only hint I will give.  I'd give too much of the answer away if I say more.

The third question "Theme Park" is easy for the small set, but tricky for the larger one.  I actually messed up on the larger one because I couldn't finish altering my code in the 8 minute time segment you have to submit the large answer set.   This problem deals with roller coasters.  You are given the capacity of a roller coaster, and the number of times it will run in a day.  You are also given groups of people who are together in line (i.e. [5 6 2 3 1]).  Each person pays $1 for every ride, and people get back in line as soon as they get off the coaster.  You have to figure out the coasters revenue for the day.  The caveat is that groups wont split up (they stick together like good friends =)  There are a few other tricks you'll have to figure out yourself.
Where I went wrong on the large set, is not building in checks for the data.  Google gives you completely valid data sets, but they don't just follow the general template like the small set does.  I can't tell more, otherwise I will again give away more than I should, but just think of how they could mess with you and your data.

Good Luck to All Competitors,
See You In Round One!
 - bsquared

Saturday, April 24, 2010

Javascript/PHP Library

After coding a few websites, I have learned jQuery is amazing, and that PHP rules.  But have also not been able to find any librarys that inherently integrate both JavaScript and PHP, or any that just provide simple functionality that is common on websites.

Personally, I don't care that much about all the other fun stuff that jQuery does, such as all of the awesome selectors, animations, and everything else. But what I am in love with is the .post(), method, which makes things so simple.  What I do care about is AJAXing everything... the login, commenting form, rating systems... anything that can be AJAX should be IMO.

Another JavaScript plugin I love to use is Google Analytics.  They track everything for you, and yes, I do mean everything...  If it can be recorded using JavaScript, Google saves it for you.   But the problem with this library, as well as jQuery and all the other libraries is that they take TIME, which is sooo important in web development.  Not only do they take time because of their huge footprints, but they also take time because of all the DNS queries, jQuery hosted somewhere (hopefully on your server), Analytics on Google's server... all of these take time to load, and it adds up.

As evident in the writing above, I think that there needs to be a JavaScript library that focuses mainly on load time for the website, and also has great tools to help developers do simple tasks such as user authentication and event logging.  I'm not gonna just sit here and say what this library should have and pass it off to another developer, so I am announcing here the launch of my JavaScript/PHP library currently entitled "vi".  This should be in an beta release in about a month hopefully.  Keep in mind that this will be written in PHP and JavaScript to optimize load times and such.

Another focus of this library will be to make it as customizable as possible, and also to make it easy to extend with plugins. I have had horrible times trying integrate forum software into an existing user authentication system, and editing its code to change the features for the specified use of that forum.   So one of the initial plugins that I will write will be a extremely easy customizable forum that will integrate with what you already have in place.

Monday, April 19, 2010

I May Just Be Kuler Then You

I say so because I just learned about an awesome website that is an awesome tool for designers (such as myself).  Kuler is a service run by Adobe where users can upload color swatches in groups of 5 that they think work well together.  Then, people can go online to Kuler take a look at the most popular, and highest rated color combinations.  Earlier today I went online to look for a color group for a website I was designing.  The site deals with the Green movement, so I was looking for earthy colors that I could use.  I looked around and one of the most popular ones was called "Park Avenue Shift"  I took a screenshot, opened up GIMP loaded the 5 colors into the saved color spots in the color picker, and went to work.  After 5 or so hours I came up with a nice looking design.  After looking at the design, I think I may need to change the colors up a bit, but that will be as easy as going back to Kuler and looking for another green-centric swatch.  

Hopefully you find good use out of this website, and if you find a particularly good looking color combo, go ahead and upload it for the good of other designers!

For those who want to see the rough design, here it is:

                              (Click to enlarge)

 I still have to play around and find a font that I like, and have to make the logo look better.  Lemme know what you think if you have comments.

Friday, April 16, 2010

A Bit About SSH

So yesterday I made a very detailed post about using SSH to get around networks and use torrents anywhere you want.   I thought about it more last night, and realized I should elaborate a bit more on WHY it works.  Basically, when you torrent stuff, you connect to a tracker, just a regular website, and say 'Hey, I wanna download THIS file, who has it?' and the tracker says 'Here is the list of everyone who does, and everyone who has some of it' (aka seed/peer counts).   Then your torrent client does some stuff to pick out the best seeds for you, and connects to them.  Then you start to download the file.

When IT people look at their traffic, they will suddenly see some traffic popping up on some random port, 61324 lets say.  They can then look at the stream of data, and they can see very easily that you're downloading music or movies or games.  

What we do to fix this is run all of our traffic through SSH.  You might be wondering why they can look at the torrent traffic, but not the SSH traffic... good question.  The answer is that all SSH communication is encrypted.  Yes the IT people could unencrypt it with a lot of work, but they wont.  I will personally guarantee this. SSH traffic is usually expected to be used for remote systems or any other application where you want data to be encrypted.

You may have realized this by now, but SSH is just a tunnel that the IT people can't look into.  It has nothing special to do with torrents.  So you can apply the same settings explained in my last post to ANY application that supports a Socks4 or Socks5 proxy.  

If you have any more specific questions about SSH, Google first, then ask me in the comments if Google fails. haha.