We’re so full of white there are no jobs

So Apple rounded out the big tech companies last week with a report that basically says all our stereotypes are true: white dudes run the show and Asians are really good at math.

Remember, stereotypes don’t just appear out of nowhere, they are, technically, derived from observed conventions.

This is a complicated problem. For penis-toting white people you’re born, you go to school, get a computer for Christmas, and totally geek out and get a job later on doing geeky things.

For penis-toting black people, you go to school, maybe you sit at a computer a little bit, you probably can’t afford a computer or a very good one, or Internet access, so you go do something else.

For women it’s a whole host of different issues. We know the arguments there, and frankly, I just don’t have enough information to speak about them. I’m inclined to believe that maybe women just aren’t, in mass, as interested in technology. Women also aren’t that interested in hunting, fishing, race car driving, farting, and whittling canoes from dead trees, but no one’s stopping them from doing those things. Men generally don’t like massages, perfume, or anal sex, but no one’s stopping them or trying to push them into that, either. Insert your own gay joke here. Then call yourself a bigot.

But back to the black and white dudes with computers. The difference in these two upbringings is that one kid almost certainly went to a school with things like air conditioners and computers. I kid you not, there are schools within Indianapolis that do not have air conditioning. Computers are also not high on that list. I do not know where the seemingly endless stream of grant dollars for these things are going, but they’re not getting to the kids.

So in 20 years time you do not get to scratch your head in bewilderment why there are no black people in big tech companies.

Our national response to this is to pressure these companies to find black people and hire them. Ditto for women and anyone to “dillute” that pack of white sausages.

I’m all for the diversity of things. You get better products and it’s obvious we have been since women have taken a more active roll in the workplace. We’ve all seen how much better Sterling Cooper is with Peggy. It’s good for everyone. Just as it is for getting different opinions and thoughts from different backgrounds.

Years ago when I was working for the State there was this push for digitizing court forms. Great idea, “Except it won’t work,” I said. “Too many people out in the rest of Indiana do not have access to good enough Internet for this. They don’t have computers or the ability to get to one. There are all of 6 public computers in all of Washington County. Three of them are for Workforce Development only.” You can’t just “eliminate the paper” because until a couple more generations die off and we push for broadband everywhere, we will have this problem. I was the only one to fight this battle because I was the only person who had spent more than 6 minutes outside of Indianapolis.

But we can’t get mad at Apple for this, or Google or Facebook or any other company. It’s not their fault the pool of people to hire from is lousy with white dudes. They didn’t create that world — society did. Or, more aptly, the government. And now the government and society want them to fix it.

Does anyone believe for a second that Apple, with more money than God, would hire for a position and say, “Well, that woman is really awesome, but let’s go with the guy.” I don’t believe that. I don’t believe anyone at any of the big tech companies hire based on anything but what you’ve done and what you can do.

Turns out, though, if you can’t do much, or don’t do much, you don’t get the job. This isn’t a country club where there’s some sign out front saying “No black people” or “No girls allowed”.

But like my last post, this comes down to personal responsibility. You can, in big cities, get on a bus and go to the library and take a book about HTML out and read it. It’ll cost you $1.75. I’ll even give you the money for it if you want. That’s how most everyone working in tech today got started — no degree required.

But we do have a societal responsibility to take in kids, help younger generations learn ever more complicated code and languages and techniques, and to ensure schools get real money to spend on real equipment. We have a responsbility to treat people with respect and dignity, to understand hardship, and to punish people for their racism and bias. Even in 2014 we need laws to protect people in clearly segregated places, but I don’t think Facebook is the bad guy (at least this time, anyway). We do not have a responsibility to hire to fill some peer-pressured feel-good numbers quotient.


My Approach to Teaching Web Design

In early June I was granted the opportunity to teach a 3-credit hour course in basic website design and development at Vincennes University. I’ve taught classes before, or at least been involved in other classes, but always with a catch. Either the class was an hour a week, had no software or was an optional “extracurricular” activity. This was my first time teaching in a true academic capacity.

My students were high school age, though they were enrolled in a college-level program, so that’s the course they got. I wouldn’t have made it any different if they were middle schoolers, high school honor students or special needs or if they were college students or adults. Teaching a web course is either done right or it’s not.

My course was condensed into two weeks, but it was the same amount of time in any standard college-level semester.

My approach would have been different if we didn’t have a client to work for, but in this case, we did. Red Skelton, the famous comedian and clown from the early days of television is from Vincennes. He has a museum and foundation in his honor and the foundation was in need of a website redesign.

Here’s the site we ended up with: http://justifystudios.com/labs/skelton/

How we did it

My students had no prior experience in web development. No grounding in color theory, design theory, typography, etc. They had no understanding of CSS or DIVs or semantic markup, either.

To start, I ran the projector from the instructor’s machine and we talked about the site. We talked about what we did and didn’t like and they had a lot of productive comments on this matter. We talked with the client at one point about what they did and didn’t like and the students took notes on that information. We looked at other museum websites for inspiration and each student spent some time looking up sites that fit what we were trying to do.

Next, we walked through the process of sketching the site. I had each student come up to the board and sketch an idea in general terms where the navigation should go, where the logo should go, etc. This allowed us to have discussions and sometimes heated debates about whether or not the navigation should go across the top or down the left side of the page. My goal throughout this process was to play the devil’s advocate and mention the downsides to all the suggestions they offered.

Why just the downsides? Because it gets them thinking about the problems they may run into later. It allows them to think out into the future and make more appropriate plans now. It also let them understand, first-hand, the importance of planning in a large scale project. That’s something I didn’t appreciate when I was their age, probably because the projects we worked on in school were so simplistic that planning just took a few minutes.

Eventually, the students took the good ideas they liked from each other’s sketches and merged them into one. I did nothing more but stand in the back and question their motives to keep them thinking.

After they had all agreed on a sketch with a basic premise of content placement, it was time to mockup the site. We used Fireworks in my class because I’m most comfortable with it and I believe its the best product available for mocking up sites. However, you could have just as easily used Photoshop or Illustrator, if you prefer.

Everyone in the class mocked up the site along with me, as I drove the instructor’s machine. This was for a couple reasons. One, it keeps the students engaged and clicking in the software first-hand, as opposed to my driving and leaving them to sit and watch a lecture. Second, it ensures I have “the master copy” of the mockup to hand to the client. Keeping in mind they were expecting something usable out of this endeavor, they needed some assurance of a quality product. My maintaining the same files as the students ensured things were done well enough. Some students may have missed a step here or there resulting in slightly different mockups for each, but they were all “similar enough”.

The mockups were done similarly to the sketches, where students voiced input on things like the color scheme, typography, content placement, navigation hierarchy and more. It was during this time that took up the most of the class time. This is where we discussed things like color theory and cool vs. warm colors, we talked about serif, sans-serif and script fonts and we talked about grids, layout techniques and content architecture. The students were quite adept at recognizing redundancy in site content (i.e. a “Feedback” page and a “Contact” page present on the current site).

The most difficult part of the mockups came in the color choices. This was extremely difficult because each student had a distinct opinion and colors are hard to get right anyway, even for professionals. The color choices ranged from stark blacks to hot pinks. We made use of Adobe’s Kuler app, which helped and opened a dialogue about colors that are analogous, complementary, triad, etc.

Once we got past those issues and we all agreed on the layout of the homepage, I emailed all of my students my master mockup so we could all be precisely the same. I knew that working with pixel dimensions as we coded the site would cause confusion if my square was 905 pixels tall and the student’s was 895 pixels tall.

We proceeded into Dreamweaver where I spared no time. I had the students walk through, with me, the basics of inserting a DIV and a Class, inserting images, modifying font colors and text and explained the various parts of the page like the <head> and <body> tags. While I could have used HTML5, we used XHTML as the software we were using, Creative Suite 4, has less support for HTML5 than does the CS5 edition. This period allowed me to explain the parts of the pages, what we used to do with tables and what we do now with DIVs. I also explained ALT tags and why we use them. One student actually had a grandfather that used a screenreader, which made the explanation much easier. We also had a discussion about how Google and other search engines work, both with text and images. This led us into discussing Heading tags, too, and how a good webpage is modeled closely after a well written book.

The actual website code

After we messed around for an afternoon in Dreamweaver making up a simple page layout, I launched right into making the client site. We didn’t have time to waste making simple “About Me” pages that are so prevalent in web instruction and anything that wasn’t covered in the hour-long demo of the basics could get covered as we went along.

Students struggled the most here, as I imagined. They all coded the site right alongside me and the variations were vast. Some students handily picked up the material, some did not. Some students thought they had it, moved ahead, but realized they made mistakes along the way and that caused more trouble later. In retrospect, keeping students engaged here is hard because as soon as one student has a problem, you end up spending a few minutes looking for the missing comma or semicolon or closing tag, which is almost always the case. For me, it’s like finding a needle in a haystack multiple times in a row day after day and other students stop or slow down when you’re not actively talking.

The alternative, however, is more simplistic sites that are slower to produce, one-line-at-a-time, alongside the instructor. I preferred my students make mistakes because after a few missed semicolons that caused them several minutes of frustration on their own, they were more apt to remember it next time.

We went along for almost a week coding the site. We discussed all matter around links, tags, headings, page titles, SEO, semantics, syntax, and more. Students found it frustrating at times and became visibly disgruntled at their progress because they could not get a DIV positioned where they wanted it or, more likely, because it appeared different in Firefox than Internet Explorer or another browser. This resulted in an explanation of browsers, rendering engines and how they differ and why they differ the way they do. Sometimes this involved very politically incorrect responses like, “Apple doesn’t want to support such-n-such technology from Microsoft, so they do it another way.”

After 3.5 days of coding the students had developed their own copy of the homepage and each had been assigned to one of the pages we agreed as a class needed to be in the site, like an About, Contact, Donate, etc.

Finishing up

After the students wrapped up their work, which by this point was self-driven by them without my guidance beyond assisting with troubleshooting, I invited the client back in to see the site. Ordinarily we would have involved them after the mockups were created, but our time was too minimal.

I had explained to the students that the client will likely have a lot of changes, and they did. My goal was to prepare them to not be upset or take it personally. Likewise, before the clients arrived, I took them outside and prepared them on what to expect. I even told the client about specific areas I knew were weak or sub-par and asked them to make mention of those items. For example, one student decided to layout some text on her page in a different font and style than the other pages. Her reasoning was that it would “make the page unique compared to the others”. Even after discussing matters of consistency and having the other students agree with me (the other students are your secret weapon to persuade one or two people one way or another), she stood her ground. I respected her opinion, but knew it wasn’t in the best interest of the site, it was her trying to make her mark on the site.

The clients peppered the students with question after question for nearly 40 minutes. After which, the students were a little stunned so much of their work was called out, including some of the things I helped them lay out, such as the page templates.

This is where I spent time explaining some of my experiences with clients in the past. I told them about a client who demanded all the text on her site be blue and not black because she used to work in Hospice care and thought black was “too somber”. I told them about a client who once asked me to lay out a website based, precisely, on the mockups they did in Word. The students laughed at these and, to an extent, realized that clients have their wishes and demands and its up to as the problem solvers to balance those demands with what’s best for the industry and end users.

The last few days of the class were spent fixing up the pages they worked on and preparing them for publication. This was done by having all students send me their HTML and CSS for their page and I included them into the “Master Site” I was maintaining.

In retrospect

In all, the clients were 90% pleased with the work they had received. The students were proud of their work, too, and happy to see their names in the footer of each page. The 10% of problems from the client came from a lack of expectation management on my part. I needed to prepare them that some things they wanted, like a store and an interactive timeline, are beyond the scope of my 100-level class.

I told the students that the work they had done in my class was more intense than three and four hundred level courses I had taken at IU on similar subject matter.

I’d argue with anyone that believes website development isn’t an “academic” course and is instead a “technical” course that they’re only about 50% wrong. The students learned a great deal of user experience psychology, content hierarchy and web writing skills, advanced artistic appreciation, how to research online in addition to the technical matters they seem to think is “beneath” a “real” college course.

For anyone teaching a similar course in the future, I would encourage you to have “break activities”, too. At times students needed a break from the work at hand, but rather than letting them play games and check Facebook, I instead had them working on Photoshop tutorials, Illustrator tutorials and more. They may work on those individually or we may do them as a group, such as when I walked the students through an Illustrator tutorial to re-create Homer Simpson (a visually simple character to draw digitally). I noticed, too, that students most enjoyed working in Photoshop modifying pictures they had of themselves in their Facebook galleries. The trick for me was finding online tutorials that helped them make use of those photos.

The work was hard for me as an instructor, because it wasn’t as simple as opening a textbook and having them read the instructions. Doing that just teaches people how to use instructions and most of life does not come with a manual. Instead, I assigned no text book, nor did I give tests or quizzes. I quizzed students orally at random times by identifying a student and asking, “We’re using what kind of font here?” and awaiting the response of “serif” or “sans-serif” and other quick quiz-like questions. Their grades were based on participation, 10% a day for the 10 days we were together. My deal was simple on day one: “I won’t give you a test or stuff to study so long as you come in here and give 100% every day.” As a result, I think the students were more engaged and learned more.

If and when I do this again, developing ways of making this more real-world may be beneficial. Such as requiring time tracking, invoicing and other “business” matters. The students are always more excited at the prospect of learning something that can translate into real-world value, and when explained well, web development can be that for them.

My Latest Project

I’ve been pretty quiet lately. I’ve been busy as of late, working this year at X-Mester again and working with my good friend Tony on our re:build web conference coming up at the end of July. There’s a lot going on.

So, it seems like the perfect time to start another project!

While I was away at X-Mester, I was getting up at 6 AM, maintaining client work, teaching and supervising students and going to bed around midnight. There wasn’t a lot of time for much of anything else. So I got behind in the news of the tech world, something I follow very closely. I’m a news junkie that way.

It made me realize how much most things just do not matter. The endless stream of Facebook posts about nothing, Twitter posts that seem out of context to everyone but that person and all the news stories that happened in my industry that were of such little quality.

I wanted a website where I can go to and find out all the important stuff really, really fast that’s well designed and with no distractions. I’ve always wanted something like that even when I’m at the office during the day working. I can easily spend a whole afternoon in RSS Hell reading story after story. Most of them aren’t really worth it. Have you ever read a blog post that changed your life? No, of course not.

So that’s why I’m soft-launching SlowNews.me. A site that’s run by me where I’ll post all the big stuff, the stuff that matters. For now, I’m getting into the swing of things, so posting may be off my self-imposed deadline of twice daily (by 6 am and lunch).

No more wading through posts about endless Apple rumors (“A 24 inch iPad by next week!”) or endless dribble about some new phone (“The Nokia N93522914 is coming soon!!1!!1”) or posts about how to upgrade your browser to the latest version of Chrome. I don’t need that and neither do you. Those sites post stories for the sake of posting. Listening to podcasts is too time consuming and using Twitter for news is fine if you want to organize a bunch of lists to keep all the power-users from dominating your stream. I’m posting for the sake of sanity.

It’s tech news at the speed of productivity for developers, designers, tech lovers and users. It’s time to get back to work.

Check it out at www.slownews.me. You can learn more about the site at www.slownews.me/about.

Quitting Facebook

Facebook is dead. The spam has won.

I’ve been using Facebook for nearly 7 years now and I cringe to think how much time I’ve wasted on it, but I don’t think it’s been that much compared to a lot of other people. I use Facebook like this:

  1. Login
  2. Look at the recent status updates
  3. Maybe make a few comments
  4. View photos if they look interesting

I’ve enjoyed Facebook for years because it’s seemingly removed the need for a high school reunion. I know what everyone’s up to, who does what and so on. I don’t follow much family on Facebook, but I can see how that’d be nice, too.

Lately, things have started to change. Facebook, like any other company, can’t just say, “Well, that’s perfect. Let’s just maintain this now and not innovate anymore.” Could you imagine if Henry Ford thought the Model T was “just perfect” and left it at that? What if Microsoft stopped at Windows ME? Companies and people can’t just get to a point and stop. That’s how societies stagnate and crumble.

The trick, however, is innovating and growing in a mature, sensible way with purposeful iteration.

Facebook grew out of the .edu-only years and started enabling everyone with anything to say a place to say it. They innovated quickly, pushed changes at people very quickly and without warning. A slew of privacy issues has come of it, too. Under pressure from Twitter, Gowalla, FourSquare and others, they’ve added real-time status updates, check-ins, chat, email, photo sharing and they’ve monetized by putting ads in front of people that are creepily more targeted than Google’s famed AdWords.

Facebook is the new AOL, trying to be everything to everyone and in the process is becoming nothing to no one. Here’s what I see right now as I log into Facebook:

With all due respect to the original authors, the first two posts are effectively ads. The third post is about a music video I don’t care about or like. The rest are seemingly mundane posts that I either don’t understand or have no affinity to. The last post is a check-in from someone I went to high school with. I’m sure they’re having a fine time, but I don’t know where that is or why I should care. It’s one thing to check in from the White House, Grand Canyon, Times Square or the Space Station. It’s another to post that you’re at some random bar. The events are always pointless to me because everyone invites me to everything from a birthday party to a meetup to a political event. Has anyone ever looked at their Facebook wall and thought, “Hey, I want to do that, too!” or “I’m there, too! Let’s meet!”

In my mind, Facebook is the ultra-social site that combines the one-off services from other providers. Check-ins from FourSquare or Gowalla, statuses from Twitter, photos from Flickr, video from YouTube and so on. It’s becoming a bit much.

I’ve taken the time to at least try to curate my friends list. I know many individuals who have blocked me on Facebook, mostly old high school classmates. That’s fine because we didn’t have that much in common anyway. But now I find that Facebook is becoming “User Streamed Spam”. I guess I do it, too, with blog post links and the sort. But I do try to curate my posts as best I can. I respect people’s viewing experience on Facebook. Most people do not and post whatever pops in their mind.

Twitter, for me, is a better experience. I’ve carefully selected who I do and don’t want to follow, which admittedly, doesn’t happen as much on Facebook. On Facebook, I tend to hide a lot of people. Usually people who I met once somewhere and now they know me from some event I hosted. I’ve unlinked my Twitter and Facebook account in an attempt to refocus status updates to both targets differently at times. And, I’ve un-followed people on Twitter because I follow them on Facebook (or vice-versa) and I got tired of seeing the same thing. That became very cumbersome. Now, Facebook has removed the ability to hide apps on your wall, too. It’s almost as if they’re forcing me to see everyone’s horoscope.

Maybe I’m an old fuddy-duddy, but I don’t like Facebook anymore. It isn’t fun, social or unique like it used to be. While I admit to using Facebook to blurt out some things I’m hosting, I try not to do it a lot. And, I actually do take the time to think about clever things to post on Facebook. No one cares about my dinner, I get that, and I don’t post about it. Heck, I don’t even care about  my dinner. I also try not to repost the same old things that have spread around the web time and time again.

The new polling feature is the death nail for me. I answered a question once, out of boredom, and lo, it re-posted to my feed with no way for me to know or delete it. I spammed people with some dumb question and didn’t even know it. I don’t care whether you like Pepsi or Coke enough to want to see it on my wall at 2:30 in the afternoon.

And, as an aside, on two occassions this week I’ve posted comments on two different people’s Facebook statuses. One, for instance, claimed that Obama moved his State of the Union Speech to accomodate Dancing with the Stars. That’s sorta true, if it weren’t for the fact that the State of the Union happens in January. I mentioned a correction that the speech was about Libya. A few minutes later, that post was deleted. How dare facts make it on to the Internet. On another occasion, someone removed a post because, I guess, they don’t like me. That’s fine, but it makes for a bad experience. That’s probably why Facebook doesn’t have a “Dislike” button. Everyone would get mad at everyone and just leave.

I’ll be leaving Facebook alone for a while and spending more time among the people and content I care more about over at Twitter. You can follow me @jlharter (or @justifystudios or @refreshindy or @rebuildconf). But unlike Facebook where it seems rude not to befriend a person when you both know you know each other, Twitter doesn’t have that culture so don’t expect me to automatically follow you back. It reminds me more of the early Facebook. I ‘like’ that.

My Experience Using Chrome

When I first bought a Mac, I installed FireFox because I was used to it from Windows Land. Then, I started to appreciate the aesthetics of the Mac and FireFox didn’t fit into that scheme. So, I installed Camino, which is like FireFox-lite for Macs. It was great. It was fast, secure and easy to use. However, it didn’t support extensions. At the time, I wasn’t too irritated by this as extensions were a pretty new and novel thing and I could live without them.

At some point FireFox started to catch up with Mac aesthetic standards and Camino fell by the wayside. So I went back to FireFox. Enter Safari 5 and I went back to that. It was super fast, easy to use and new extensions made it perfect. I loved it. MobileMe kept Safari on my Mac in sync with my iPhone and later my iPad and other Macs. Add a bookmark on my Mac, boom, it’s there on my iPhone in seconds. The extensions were great, blocking things like ads, Facebook ads, etc. I also loved the “Reader” feature.

Then Google introduced Chrome and only a few people started using it. It was new, shiny and I saw it as “another browser to support”. The extensions for it were useless and only a few hardcore geeks used it for whatever reason. I installed it, thought, “That’s nice,” and never used it again.

At some point, I don’t know when, people started to hop on the Chrome bandwagon. Extensions grew, Chrome got better from Google’s end and FireFox started to feel bloated in comparison. Chrome became the FireFox of our childhood, so to speak.

I still ignored it, thinking it couldn’t be much better than Safari. I don’t visit malicious sites, so the “it’s more secure” bit is valid and I respect it, but I don’t care.

HOWEVER, I’m a tab-hoarder extraordinaire. I never restart my Mac until it comes crashing down around me, about once ever 4-5 weeks. Usually because Photoshop did something stupid. I never quit my browser because I always have tabs open that I want to come back to later. Right now, I have two tabs open to sample code I’ve been playing with and three tabs for sites I’m referencing for various research purposes and four tabs open related to a website I’m working on for a client. This is the norm on my desktop and I suspect on many other’s desktops, too.

Safari crashed yesterday, as it is prone to do after 7-10 days of heavy use for 10 hours a day. I have Flash disabled in Safari and use an extension to load H.264 versions of YouTube videos. But, that still causes Safari to misbehave. Safari also leaks memory like the dickens. I have 8GB of RAM in this machine and Safari usually holds up to 2GB worth and never lets go until I quit it. That’s a pain and makes me lose work.

So, with one crash yesterday I lost 19 tabs of things from the past day or so I was working with. Pulling them out of my history would be hard as I don’t recall what the URLs were and in some cases what the sites were even about. I just saw them and thought, “Neat. I’ll come back to this in a bit.”

That prompted me to bump Chrome to the top-spot in my dock. I’ve been using it for a few days now and it still feels snappy, stable and is using 122MB of RAM. Safari, however, uses about 80MB just as you open it. The best part is that I have yet to break this thing even with Flash enabled. Extensions have been able to fill in the gaps where I find them – like Reader and Facebook Ad blocking. I don’t like that I can’t customize my toolbar, which seems really unlike Google, but maybe it’ll get updated soon. I’m tired of looking at the “AdBlock” button all the time.

They’re some nice UI choices in Chrome, like how the tabs show key words in the page titles, not just the first few words. And the tabs are easy to drag around. However, with a full bar, it’s very difficult for me to move the whole window. I have to grab that sweet few pixels around the Close/Minimize/Resize buttons.

I’m sure at some point I’ll miss the ability for it to sync with my iPad and my iPhone, but I’ll learn to live without it. They’re other matters about Chrome I don’t like. For instance, when I “Copy Link Address” from a Google result, instead of copying “www.justinharter.com“, it copies this:


Not cool.

Chrome also has the same problem as Safari where it tries to direct me to items in my history when I want to visit a new site. For instance, yesterday I did a search for “Chrome Reader Extension”. Today, if I do a search for “Chrome” it automatically fills in “…Reader Extension” and takes me to that instead. Not what I wanted at all. I have to remember to type “Chrome” + ‘Delete’ key to really tell it, “No, search for Chrome. Seriously. I mean it.”

Admittedly, Safari has the same issue, but it’s better than when it first came out. Used to be that typing an address in Safari would make it search for every random word on every page you’ve ever visited. That got real old, real fast. An update arrived and it made it smarter, but still not perfect. I do think it’s better than Chrome’s, though. This is by virtue of having the address and search bars separate. It keeps their respective caches cleaner.

I’m enjoying Chrome well enough for now. If it can survive longer than Safari under my workload, it’ll be a keeper.