Category: Business Process

  • Did you purchase Taleo Business Edition?

    If so, demand your money back. Then, give me $70k, and in 3 months, my team will have something better than they do. This will allow your company to have better job applicants: those that do not have negativity towards you.

    Out of the 67 jobs currently on FlexJobs, at least 6 had this horrid system implemented as their job applicant & recruitment system. Of those, 5 out of 6 sabotaged the interface implementation in some shape or form. By this, the HTML & JavaScript they used to embed Taleo’s system had too much control given to those who do not belong having that level of design control, and thus made it unusable to those using the site. I think Brightcove was the only site that actually implemented it correctly into their branding and kept it clean.

    Furthermore, each site used the same system, yet I had to input my information & re-parse my resume each time. It is the same system… why am I having to repeat myself multiple times? This doesn’t include the other sites that didn’t use Dice, Monster, or their own system which included it’s own registration system. I had to create a new user name and password for each job application. The registration forms themselves were not well designed, making me write my email 4 times vs. the needed once. Weirder still, probably because of too much freedom in implementation, Taleo’s registration differed from site to site! The worse was 10 pages of questions on some of the implementations with a 10 point, bold font; really hard to read.

    I’m willing to bet money the same problem that plagues badly written e-commerce sites with abandoned carts plagues companies that utilize this system. I came EXTREMELY close to abandoning two sites, one of which wasn’t Taleo but some other badly designed interface with an unusable system. “As a software developer, do I really want to work for a company who can’t even implement 3rd party web application?” A resounding “NO!”.

    There are 2 types of job hunters, active and passive. Passive people put their information out there in an easily accessible fashion on sites such as Monster, Dice, and various other job / recruiting sites. In late 2002, things started to pick up. Instead of 3 recruiting firms calling me for the same job posted at IBM attempting to be first in, I’d have 5 recruiting firms contacting me about different opportunities. If you were a passive job seeker towards the beginning of 2003 for Flash work, the opportunities would flood in. The websites suddenly provided good value to their users in forcing them to input their information into the web site systems through not-so-fun interfaces: employment opportunities. To their credit, Monster has improved over the years, and Dice was very active in their community seeking user feedback.

    However, one thing that hasn’t changed in 5 years is for the active job seekers, those who seek out work from various companies & individuals, is the process and thus experience of looking for & applying for new jobs is still horrible.

    The same websites of companies or their middle-man recruiting firms all had horrific systems, all varied, all requiring unique registration that you’d never use again, and all having stone age abilities at parsing resumes. For those larger companies who have set systems in place with questions & processes for legal issues as well as controlling the influx and type of information sent to HR, these systems were built for those goals in mind, and in the end fail. They result in the job seeker having a negative impression of the company (if I’m applying for a web application position, you already look pretty bad), frustration in what is supposed to be a positive endeavor, and built up expectations derived from those negative experiences that may be unreasonable compared to what they had set before starting to apply. If you are hiring, you want someone who wants to work with you because you offer work that they will excel at. Having the applicant demanding more than usual to compensate for a negative job application experience is ridiculous, but I bet accurate. I’d go so far as to say that their answers have the potential to be flawed in the job application process because of the negativity built up during the process. Just because they are the ones applying for a job from you doesn’t mean they have to suffer to work for you. Job hunting is supposed to be a fun and exciting experience to the benefit of both parties.

    5 years people… 5 years and things are WORSE now than they were before!

    You have 2 options. If you are a small to mid-size company, use Dice.com. Their application form is the greatest on the Internet with Google-like simplicity allowing quick use for the user, a positive impression, and no implications or perceptions implied towards the company being applied to (vs. negative from the above):

    dice.gif

    If you are a larger enterprise with the need to filter applicants based specific questions, skill sets, and other legalese controllable in a CMS like system to prevent too many responses, see my first sentence.

  • Creative Commons is not for Software, I Disagree

    I was irritated there was no attribution style license on Google Code, specifically, no Creative Commons license. So, I joined the Google Code mailing list, found 2 previous posts from people asking for CC being added as a license option, with responses that didn’t make it seem too likely to happen. I posted anyway, and got the response that it pretty much wasn’t going to happen, and that although they do not have the older bsd license that has an attribution aspect, they suggested other code hosting services.

    Further irritated, and thus emboldened, I joined the Creative Commons Developer mailing list. I let them know the situation, asking if there was a way maybe we could use some positive PR to show how it was a good move for Google to support the CC license. This would work well when people use graphics and other design elements for projects, for example in the software projects hosted since a lot of that stuff is CC Attribution nowadays.

    Instead, I’m provided with a link to the Creative Commons FAQ by a CC developer representative. It clearly states that Creative Commons is not designed for software, and they ask you to use other licenses. I was floored. I’ve been using Creative Commons since 2003; that’s almost 4 years, and I had no clue! I started using CC Attribution because:

    So, naturally, I just assumed I would too. This was about the time many Flash Designers were stealing other’s code online to show as their own during interviews for Flash Developer positions. I am a big supporter of sharing code, but I wanted some form of control over how that code was used; specifically, keeping my name associated with what I originally had a hand in writing. This made my career, so Creative Commons set clear expectations of that. Secondly, it made those using my code for commercial projects comfortable in knowing they had legal rights to do so. Share the love, empower the masses, and as an artist you get exposure. A lot of early ActionScript is a lot easier to remix anyway, so it seemed like a match made in heaven.

    Fast forward to yesterday, and me feeling like an idiot.

    For now, I’m stuck with MIT; I briefly read the other licenses (Apache 2, Artistic License/GPLv2, GNU General Public License 2.0, GNU Lesser Public License, Mozilla Public License 1.1, New BSD License) and the MIT one is the only one that is immediately understandable, and appears to jive with my “I wrote this for fun, hope it’s useful to you, just don’t hold me legally liable for it’s use”. I’m sure if I find an open source guy at the next conference I attend, I can get some more layman explanations of my options.

    Anyway, I think the Creative Commons FAQ is wrong. ActionScript is a dynamic language in a wonderful artistically capable runtime engine (the Flash Player) and tool set (Flash & Flex). The sharing & remix culture is what helped ActionScript become so successful and contributed to my career. This is exactly what Creative Commons is built around, and the Attribution 2.5 specifically is aimed at the Flash Developer culture in my opinion. This isn’t a cop-out or excuse to my previous ignorance; I truly believe the statements above.

  • Identifying Team Resources

    Fellow UM consultant Andrew Powell talked about the RIA Team Concept. That inspired me to write about my recent team building experience.

    I had the opportunity 3 months ago to augment my team. Placed on a large Flash development project, I knew I couldn’t do it alone with the resources I had. That’s what my gut said. It took me about 3 business days to identify the scope of the project based on what I was told from various stakeholders (dude’s and dude’tt’s in charge). It took another 5 business days to identity the true extent of what available resources I had. I’ve had no formal training in resource management. A resource being defined as a person with a skill set that is valuable to my team. Typically, I’ve been an added resource to a team, a Flash / Flex Developer hired to enhance an existing team. This time around, I was looked upon as the person who could correctly identify who, and how many, additional people we needed.

    I looked at the project’s scope & deadline, people I currently had available, and knew I needed help. How?

    • I’ve done enough development before to know what I’m capable of.
    • Over time, I can recognize people’s skill sets, and make an inference as to what they can accomplish in a given time frame.
    • I’ve done enough variety of work to recognize what skill set does what type of work best.

    Those 3 are mostly drawn from experience. Experience can’t be taught, it must be lived. Regardless, reporting on experience helps others learn how they came to be, and as we understand others’ experiences, we can understand ourselves.

    There were some obvious signs of what we DIDN’T need. The project was a refresh; meaning, an existing website was adding a new design and changing some functionality. The data, all dynamic from a set of .NET web services on the back-end, was not changing. If it was, there were numerous in house resources that management assured me would be more than capable of knocking them out quickly while being flexible to requirements.

    Good, no need for server dudes. Bad thing, though, these gals n’ guys are easier to find than client peeps, say… a qualified Flash Developer.

    The single developer I was assigned to work with was not a designer. I am not a designer, I just like designers. I knew we needed a designer. Even if it wasn’t the one actually designing the new site, we needed someone to be accountable for the design in my team. Developers tend to have no regard for layout, font choice / size / weight, and will ignore gradients that don’t display on their monitor. It’s not that we can’t, it’s just we aren’t paid to do those things; we’re typically focused on making things work, not look good. As such, we needed someone to work with us to keep us in check. Having a design change break working code that was fought hard for 2 months later is a major morale & productivity killer. As such, you need to massage it into submission while the patient is open. A designer working with the programmers to ensure the design is correct and to help adjust to design requirement changes should be done in tandem, not at the end of a project.

    I needed a designer.

    Another week into it, I realized we weren’t allowed to rewrite things. I wanted to nuke the whole code base, but that wasn’t in the time frame. That’s always a joke in the Flash industry because you can typically re-write bad ActionScript faster and end up with something with less bugs, easier to test, and more scalable anyway in the end if you know what you are doing. The trick is how do you sell that to management? Do you do it anyway, risking that if you take longer you defied orders, or instead look like a hero at the end? All kinds of crazy, ethical blurriness here. That, combined with the insane deadline + the amount of code to jury-rig into submission was… daunting. Considering I had a seasoned programmer on my side, I felt good. He didn’t have any Flashdev experience, however, so I knew I’d do a lot of peer programming. Peer programming being defined as 2 programmers using 1 computer to program. I do this a lot for solving bugs with my teammates . He’d teach me about the code base since he had experience with it as well as the business. In turn, I’d explain why you can’t mask device text at author time in the Flash Player, why the existing code base was f00ked via copious justifications, and all of those other nuances us Flash Developers know about our platform. That means 2 developers barely making headway. I needed someone else doing recon in other areas, covering our backs, and generally being a work horse while us two forged ahead in deadly waters.

    I needed an additional, experienced Flash or Flex developer… preferably Flash.

    Another week into it, the sheer amount of “screens” and “sections” made me realize that there would be a lot of production art. Production art being the process of converting Photoshop, Illustrator, or Flash FLA files into a design that can be programmed inside of the authoring tool, in this case the Flash 8 IDE. This is, unfortunately, an art. Designers can be pretty good at this, but it is rare that programmers are because a lot do not have a design appreciation for the assets they are converting, and thus quality and intent can be lost in the conversion process. As the tools in the industry get better and more integrated, hopefully this skill set will go away (*ahem* :: cough :: :: Adobe :: :: cough :: ), but for now it is a necessary evil. It has a worse perception than Information Architecture in that many do not even recognize it as a skill, let alone a valid task. This one requires a lot of educating management very delicately if it’s considered new.

    I needed yet another designer. They could not only use Flash from a designer’s perspective, convert assets, but also ensure us programmers aren’t making a mess of the implemented designs.

    So, I managed to get:

    • 1 in-house programmer, experienced with the code base and business
    • 1 in-house designer, experienced with the business
    • 1 remote developer brought on site with Flash Developer experience
    • 1 remote designer brought on site with Flash Design / Development experience

    The whole time, I managed to convince management to allow us to all work in the same office. That’s right, 5 dudes in the same office. Because of the deadline, remote work wasn’t possible as far as I was concerned… at least at the get-go. The in-house designer was originally on a different floor, but f’that . After 2 days of IM’s, phone calls, and trips to the elevator, my team and I had had it. We apprehended some fans, and even snagged an extra whiteboard. I did my best to make Twizzlers always available. Unexpectedly (to me), management started ensuring that our productive garden thrived, and watered us with facts gleaned from copious meetings we didn’t have to attend, and gave us sun beams of praise. It was great how it worked out!

    I feel I made good decisions, and things worked out better than I thought they would. I was really nervous at the beginning asking for so many resources, both internal at the client company I was consulting for, and from my own consulting firm. I’m technically asking both companies for a lot of time and money from various individuals. Those are not decisions to be taken lightly. I’ve never argued with my gut, though. If he says jump, I jump. All the experience collects there, you see. Thus, I trust it implicitly. Yes, yes, I swear I did some double-takes and did some second-guesses just in case. Nothing like role-playing devils’ advocate, out loud, near others who you shouldn’t be role-playing near.

    The only challenges were keeping the designers focused 100% of the time. Forces outside of our control made it challenging to present them production work in a steady stream. Additionally, the amount of bugs and code re-factoring made it hard for us developers to showcase completed sections for the designers to do their thing on. I am constantly playing catch up to find valid sections that are ready for “painting” or “design inspection” as it were. QA became a good scapegoat (aka back up task) but RAD development, even with a good plan, isn’t always everyone going 100%. Developers, even in agency work, are always slower than designers.

    Anyway, I know the above was kind of vague, but hopefully that give you some insight into how I made my decisions. I made the mistake in the past of not asking for additional resources sooner, so learned from that, and nipped the problem before we hit the starting gate. I am glad I was given this opportunity to learn and am glad it worked out so well. I typically write about the hard lessons I’ve learned from failures, but this is a success so it’s a nice change.

  • Google Is Jacked

    I read this article that gives some small hints about how Google operates. I accept the fact it’s not an entirely clear picture and is one sided. However, it still paints a disturbing picture. By the time I was done reading it, Google appeared to be to a surviving dot-com company.

    They made a bunch of bling, and now proceed to waste it on fruitless R&D projects. I’ll be the first to admit that Google Maps is the shiz. They helped solidify the false pretense that everyone and their mom can create fantastic AJAX applications. They showed that the web can still be cool.

    Yet, Google has just gloriously failed in their marketing and operation efforts. Evite.com and Bank of America still use MapQuest. Huh? If frikin’ Real can sign mad deals with the MLB, Google with their supposed gargantuan resources should be able to sign deals with those companies, right?

    Ask yourself where you hear about Google. Me? Friends via word of mouth, and blogs. I don’t see them on TV, magazines and various other print ads, nor radio. I do see Google Earth being used in the news with their logo on it, even in the movie Crank. They take the same attitude their search engine did. If it’s cool, people will come. BS. There are a ton of things that suck, and people still go there and use them. Lotus Notes vs. Thunderbird or Outlook, Hotmail vs. Yahoo! or Gmail, Real Player vs. Flash Player.

    There are a plethora of examples where things that suck are more prevalent than things that rock. They are either first, have better execution, or just better advertised. Google is failing majorly on the last two. Everyone will admit that despite a couple browser / OS combinations they missed with Google Maps, it was definitely very well executed, technically. It wasn’t the first; MapQuest was (or maybe someone more net savvy than me can name the “true” first). Google Maps spread via word of mouth. Huh? Dude, yes, that is extremely effective, but so too is an all encompassing advertising initiative combining various types of media targeted at various demographics.

    There are many of their products that do this… or rather, DON’T do any advertising which I think is a shame. Non-Google evangelists seem to rise from the blog sphere as weeds instead of being a lovingly planted seed like other companies do.

    Look at Laszlo, for example. For all the supposed thousands of developers, I’ve never seen ONE blog post about how great Laszlo is. People have reported it exists, yes, but they haven’t reported on, from a developer’s perspective, what was great and why. The only blog post I ever saw was from a CEO reporting on that they chose Laszlo to create Pandora.com, the music genome project. He is not a developer. Granted, most of my feeds come from MXNA, but if they are not there, why the hell not!?

    I’ve even heard reports of companies moving from Laszlo to Flex 2, not because of price, but because of confidence. If they spread positive karma via tech evangelists, they wouldn’t have this problem.

    With Google, it’s even worse because that’s all they got.

    Even more disturbing is the article’s claim of no profitable endeavors. What are their metrics? Do they include AdSense clicks in GMail? That seems like added value to an existing successful endeavor to me, and thus implies GMail had a positive contribution to that revenue. I’m sure the same can be said for Google Maps, Google Earth, and various other products they have. That very fact alone makes me question the whole bloody article.

    Anyway, it still did paint a pretty disturbing picture. Thousands perished in the dot-com era, except Google. Yet, I don’t think that was entirely from pure hard work and smarts; it was a lot of luck of AdSense contributing to most of their profit.

    :: fast forward 4 hours after dinner ::

    So, in talkin to co-workers, we disagree on some points. I definitely don’t know as much as they do on Google’s financials’. Bottom line, Bob feels Google focuses more on the user experience vs. being an annoying, ad billboard or a product with a set of tolls like something Microsoft or Yahoo would create. Pat feels they think more for the long term. Collectively, they definitely think they are doing fine.

    Me? If everyone else failed in the dot-com era, but I succeeded, it’d be really hard for me to take anything anyone said that was critical about my business seriously. The article, to me, paints Google as a dot-com company; they have the same frivolous spending, the same lack of accountability in the case of the one girl losing the company millions and not getting fired. Yet, they were successful; doesn’t that grant them a license of immunity to dot-com era mistakes? I say no. If you have $900 mil a year you gross, that doesn’t mean you should pour the majority into R&D via an army of high IQ’s. Smart geeks do not a good company make.

    Then again, it’s one article, short, and doesn’t really paint the whole picture. In the end, Google isn’t saying jack. I don’t mind companies being secretive, but like the article states, no clear vision clearly communicated to both customers and shareholders, is just jacked.

    At this point, if I ever had even the inkling of a chance to work for Google, I couldn’t code. Oh hell no, not at this point. I’d immediately fire whatever crackhead is in charge of their marketing efforts, whip my katana tongue out to cut through the red tape, and make things happen. Geeks may think they are cool, but we need real consumers on board.