21 Mar

Apple Pushes Safari Through Apple Software Update

Apple which is legendary in some circles as being described that it can do no wrong, well that just proven as not true today. The big story of the day is that Apple pushed onto Windows users via the Apple Software Update, Safari 3.1. What occured is that if you have iTunes or QuickTime you have an option when installing either of those to install the Apple Software Update. This application as even described by Apple is designed to Update your software, not to install new software. What happened is that if users weren’t paying enough attention as one of my very tech savy friends did today, when updating iTunes or Quicktime, Safari installs even if you didn’t have Safari installed.

This was a rather upsetting move by Apple in the minds of many people. Now granted the installation isn’t spyware, won’t hurt your computer, is promoting a diversity of browsers and certainly not a bad browser at that. Also your default browser remains unchanged, but that doesn’t change the fact of the matter that software was installed in a rather dubious manner. The software was installed via a program designed to update software not install completely new software on your computer. This in my mind makes Apple look either like a monopolistic company using it’s power through iTunes to push other software onto people’s computer or like a spyware company not being completely upfront about it’s intention or very clear when installing software.

Some columnists have said that users should pay attention as to what software is and isn’t being installed. I agree with that position 100 percent, no question users should be aware of what is and isn’t installed on their computer. Now I want you to all go and ask someone not so technically literate what is installed on their computer. If they can name beyond 10 programs, I would be surprised. Then have them go look at what is actually installed and see if they even know what about half of them do. If they are like most of my non-tech savvy friends they won’t know. Yes, people should be aware of what they are clicking on and what they are and not accepting. One of the largest complaints about Windows Vista Security Dialog, it pops up so often people become used to it and click accept no matter what. Same thing here, we are conditioned to click “Okay” and keep going no matter what.

This is the problem, companies already push software onto our computers as is. Why do we want one more company starting. Granted on the Windows world our computers come pre-installed with bloatware, and other companies have done it in the past. Does that give Apple a free pass to do whatever they want? No of course not. The question here isn’t whether or not companies have done it in the past or what is or isn’t pre-installed, the question is about what Apple is currently doing. I would love to have someone tell me how installing software via a program designed to update software is not being devious.

19 Mar

Facebook’s Newest Privacy Features

Facebook this morning released a system of new privacy controls for user profiles. These controls allow you to create groups or lists of friends. You can then apply very specific privacy rules to each of these lists or even one particular friend.

This is a huge step forward in my opinion and one that I have been waiting for Facebook to take. The simple reason is that as open and public as I make my life some things don’t always need to be broadcast to everybody on the planet. Easy example, does my boss need to know what music I listen to or what my religious or even sexual preference is? Depending on how comfortable I am with my boss and co-workers I may not want them knowing that sort of information. Thus all I have to do is place those co-workers into a group, call it “Business”, and set up privacy controls for that group.

Okay, so what happens when a co-worker becomes a closer friend, well you can place one person into multiple groups. This person then has the most lenient privacy controls directed at them according to their group placing. That sounds really complex but it actually isn’t. I have a friend John, John started out in the “Business” group, but we have hung out several times and I would consider him now a close friend, so I place John in my “Close Friends” group. John will be able to see whatever a “Business” and a “Close Friend” can see.

The groups also allow you to message that whole group all at once. So for instance you want to tell all your close friends, that you have a new phone number. Message all members of “Close Friends” and bam, everyone knows you changed your phone number. This is much simpler than just about every other personal e-mail system on the planet in terms of this sort of mass e-mail. No having to remember who exactly you want to contact just select the group of people who you do wish to contact and write the message.

Privacy is still the real killer of social networks, the coolness factor of being involved in something special isn’t as important as the ability to present an image that the rest of the world doesn’t know about. When that ability goes away and your supposed private image displayed online becomes something that the general public can access, people leave. As public as I make my life I make sure that everything that goes online that I post or my friends post about me is something that I would be comfortable claiming as my own. There are many things that I don’t talk about online because I don’t feel comfortable with the rest of the world talking about it. That is one reason why this blog tries to be more intellectual as opposed to personal. This one change easily makes Facebook something that I now feel comfortable having all of my contacts listed inside of Facebook.

I am really excited about this change, and I hope it means that Facebook will actually be here to stay for some time.

13 Mar

Ummm, You have to umm be confident, like yeah

Are you serious??? Is pretty much what went through my head all yesterday listening to a round of speeches by students on their future career. Some quick background information, currently I am taking a public speaking class, and the class admittedly is pretty boring for me as I did debate in high school. The class is a basic introduction to public speaking, how to speak and gaining some quick and dirty practice speaking in front of an audience. So no one here is expected to be an expert public speaker or even in all honesty a decent public speaker. However this last round of speeches made me question some students’ choice in their career field and their logical capabilities.

The first set of speeches were okay, mainly because the students were allowed to use multiple note cards for the speech. Although granted the majority just read from the note cards for most of the time, the speeches were acutally pretty decent for a first time speech. The next round of speeches have just gone downhill. The students are only allowed one note card for a 4-5 minute speech and the problems just increased like crazy.

We have speeches that run on and on, for over 6 minutes in one case. Which you lose points for going over the time limit. Also we have speeches that have logic that is simply indescribable. For instance one student mentioned that to do well in this field you had to be outgoing and a desire to meet people and “that unless you’ve lived in a cave for the last 10 years you can do that.” Ummm in case you haven’t heard there are a whole group of people called introverts that are the exact opposite of outgoing and they really are not a small portion of the population or live in caves. In fact we even talked about these sort of people in our class and discussed some of the research into introverted and extroverted personalities so you have no excuse for not knowing these people exist.  Or the person who discussed a field that has exactly 3 schools that specialize in it and isn’t growing at all because the field by it’s very nature is basically stagnant. If this person had done any sort of research they would have realized this and not said that it was growing because well there was no reason given, but it was growing. The one that personally took the cake was the student who used their mother as a credible expert. Really your mom is a credible expert, what are her credentials, oh she doesn’t have any, thanks but no thanks.

My overall favorite though was the several marketing majors who described confidence as an important aspect to their job and yet were obviously unconfident in giving their respective presentations. They destroyed their entire creditability in one sentence without a single person having to think at all. It was horrifying on some levels. The sad thing is that it wasn’t just one person who did it, multiple marketing people got up in front of the class looked scared and nervous like you wouldn’t believe and then said that to do marketing you had to be confident.

I’m writing this hoping that at some point I will understand what drives people to miss these glaring problems in their speeches as well as try and come to term with how some people truly decide on their field of study in college.

06 Mar

Computer Science and it’s Ethics or Lack Thereof

Recently, I had a class project in which I had to track down a code of ethics for my career field, computer science. In the course of this research, something astonished me. First, that it was pretty much impossible to find a local company that had a code of ethics for their staff programmers and second that the widely recognized international standard of code of ethics for computer scientists was tremendously weak.

The first point, is hopefully something that was more based on the size of the companies that I was talking with. These were small one or two person shops, a code of ethics was decided to be more of a waste of time than would be worth deploying.  However the second is more alarming to me, for reasons that I will discuss here.

So what exactly are the international standard that I am looking, the ACM code of ethics. ACM is an organization that is devoted to “advance computing as a science and a profession.” The organization is basically the professional society for computer scientists. So a pretty good organization that would presumably have a strong code of ethics to maintain the integrity of the the profession.

4.2 Treat violations of this code as inconsistent with membership in the ACM.
Adherence of professionals to a code of ethics is largely a voluntary matter. However, if a member does not follow this code by engaging in gross misconduct, membership in ACM may be terminated.

This is the last section of the ACM’s code of ethics dealing with Compliance with the Code and the Code here falls way short. The problem with this code of ethics is that there is no way to really punish someone who has actually violated the Code. Unlike many other professional degrees, there is no disbarment or license to revoke. This relates to a different problem that I discussed earlier where there is no set license that programmers receive to say that they are acutally good programmers. They can receive a degree, and they can have certifications in a bunch of different areas, but that doesn’t acutally say anything towards your skills as a programmer.

I liken a certificate as simply saying that you knew enough to pass the test at the time, it doesn’t say anything about your current skill set. I used to have a Red Cross CPR certification several years back, yet in all honesty I wouldn’t have trusted myself to preform it as I was trained to. That isn’t to say that everyone is going to be this way, I know several other people who I am sure they would be able to preform CPR correctly and without hesitation. But there is the critical difference, the certificate said something that wasn’t necessarily always going to be true. Granted this is a problem with all sorts of areas, but at least a professional license says that a person isn’t just trained in this one technology or this one particular area of a field but is a knowledgeable about the entire career field. A bar exam doesn’t just cover the particular field of law a lawyer is practicing for instance a patent lawyer takes the same bar exam a real estate lawyer does.

This is creating a real problem in the computer science field in different aspects. The one though that I see as the most important and that I want to talk about is the outside view of computer scientists. This has roots in a problem of messages sent through the media, which generally only portrays programmers as hackers and people who can take over any system within five minutes or sometime during the commercial break. Which granted it makes for good drama and plenty of other fields have bad portrayals of their particular field, crooked cops, unethical lawyers, and bad doctors. However how many crooked cops do you see in comparison to good cops? Now compare that same ratio to hackers and just plain programmers? Or rather just try to think of a plain programmer who just does their job, beyond a certain Bond girl, I can’t think of any and even that is a bit of a strech.

However this myth that all programmers are bent on taking over the world and with technology becoming ever more important in our everyday life, there is a fear that I have seen being expressed by more and more people. The fear of unethical programmers potentially developing a malicious program that say sucks off those fraction of a penny in interest to controlling the world’s energy. Bruce Schneier, a renowned expert in security, has a valuable theory here, that the preceived security and acutal security are both very important. That is, it doesn’t matter how safe you actually are if you don’t feel safe on the same basis if you feel safe and you aren’t that is also a bad thing. This is what I feel creates the problem in the average person’s eyes the precived security and actual security are vastly different in terms of technology.

The reality is that there really is no system that is designed to hold programmers accountable for their actions beyond the criminal system. Which there are inherent problems with the justice system, simply in light of the fact that technology changes so fast and well the political system is not exactly known for it’s speed. Granted at the same time there is a lot to be said for a system that is designed with flexibility in mind, technology given it’s pace of innovation needs a flexible system overlooking it. I don’t know if any professional organization could adequately confer a license on computer scientists that wouldn’t be out of date within 6 months, especially with the current state of evolution on the web.

I think this is a very tricky area but a question of confidence needs to be answered, for both the profession and for society as a whole to not have a sense of fear towards technology and computer scientists.

05 Mar

Trent Reznor Does Something Different and Succeeds

Trent Reznor, the front man for Nine Inch Nails, who has widely been acknowledged as one of the most important artists in the music industry. Trent Reznor has released a new multi-part album, Ghosts I-IV, with both a Creative Commons license and an innovative pricing scheme. The first 9 tracks are available as a free download from either the site or through a legal download from ThePirateBay (note: a legal use of BitTorrent, those of you who think BitTorrent is only for piracy). The whole album is available as a download in multiple formats, including pure lossless cd quality, for only 5 dollars. You can also purchase the two cd set that will be mailed out on April 8th along with an immediate download of the collection. There are two other pricing plans, a deluxe $75 package that includes a blu-ray disk of extras along with the acutal multi-track recording sessions so you can play with the music.

The final package is a hefty $300 dollars and includes all of the previous sets, plus some more extras including being signed by Trent Reznor himself and limited to only 2,500 possibly being sold. The amazing thing about this is that already inside of three days since being offered the limited package has already sold out. This means that already Trent Reznor has made $75,000 $750,000 not including those who paid for the smaller packages.

The thing that I particularly liked about what NIN did, is that the cost to sample the album was free in real terms. The album could be sampled without feeling like you were ripping off the band such as what could have happened in Radiohead’s plan and in the earlier idea Trent Reznor spawned that was Niggy Tardust. This was something that I mentioned back when Niggy Tardusts was orginally released.

If an album is going to be released on the internet, why not make it easy for people to sample the music. Amazon does it for cd’s and their music store as does iTunes, get with the program. If the album is released on the internet before it is exposed to the public, of course people won’t cough up money to pay for an item they have no idea about. Would you buy a product without testing it first, or verifying that you are receiving something that you want?

I will say that like Wil Wheaton, I downloaded the album off of BitTorrent first then ultimately paid the $10 dollars for the full album and will probably go back and buy the deluxe package later on. This is an amazing confirmation of the idea that artists can sell their work through the internet and they don’t have to go through record albums to make money. Granted NIN does already have a large fan base and a large market presence, but Reznor did something that hopefully will change the music indusitry for the good.

(Edited: March 6, 2008 – Minor error in the amount made in the three days that it took the limited package to sell out.)

01 Mar

Object Oriented Programming Is Not an Excuse for Forgetting to Design Your System

This post is dedicated to a lecturer that I am taking a class with this semester at Texas Tech University. This person doesn’t like object-orientated programming (OOP), which I do love (I <3 Java big time). His main argument against Java and other object-orientated based programming languages is that it pushes people away from developing a mathematical model of both the problem and solution. Instead the desire is to create an object for everything in the system and develop some sort of algorithm that solves the problem, disregarding that you could possibly model the system and use a general algorithm to solve the problem.

I have a problem with the argument that OOP is the culprit for this much larger problem of programmers not modeling the system and instead going straight to code before thinking about the problem. This isn’t just a problem that occurs in OOP but rather I see all the time. It’s a problem that challenges all types of programmers disregarding their tool set or language. The real problem is a problem with both the education system and the dumbing down of the programming industry.

All right so two pretty hefty arguments, let’s tackle the first; that the current education system of training computer scientists is to blame.  This is based on what I have observed in terms of my own schooling and what I read from around the web from such readers as Joel Spolsky on the current education system. The current education of CS students tends to rather than provide life like problems that need to be solved and working the students through the process of solving these. It instead is designed to introduce the students to as many topics regarding technology and computers as is possible. This is a good thing, don’t get me wrong but invariably something has to suffer, and what does is the problems. The problems are introduced at a level that is so close to the computer solution it is ridiculous. Give a student a classic CS problem and most will have no idea where to start much less create a viable solution. This is a real problem of the students graduating from college now a days.

This goes into the second argument which is that the degree as a whole is being dumbed down. The CS degree is under a lot of attack from a lot of fronts. You have “technical schools” that will let you graduate in two years with all the experience you need to be a web programmer and make millions tomorrow. These graduates of these “schools” that compete for the same jobs that CS graduates from real colleges are competing for. This is a different problem from the earlier one of colleges not providing real life problems. However this is a problem that the majority of the career fields have solved by having a sort of professional test to determine if someone is say a professional engineer, or passing the bar exam to be qualified to practice law in a state. Computer Science has nothing like that in any fashion. I’m not entirely sure that would be the best answer to solving this problem, but it is definitely a problem that is going to need to be worked on

Blaming OOP for a problem that isn’t the tool’s fault is an even greater problem. This popped up on the blogosphere a while back that Java shouldn’t be taught anymore to students. I think this argument misses the real problem which is the general dumbing down of the industry in terms of non-qualified applicants being introduced and the education system losing it’s focus.