Jul 1 2011

Retweet June 2011

From time to time I just blast tweets about software development, project planning, team dynamics, or whatever else comes to mind. Here is a synopsis of recent tweets and rants. If you want to follow the conversation follow me at techknow and/or juixe.

Software Development

  • Know thy framework.
  • I recently received two books, one on Scala and one Clojure. From reading the few chapters on each, I have to say I like Clojure best.
  • How do you pronounce C++0x? Is the ++ silent?
  • Coworker: Functional programming is the future. Me: Functional programming has been the future since the 80’s.
  • Developers love to reinvent the wheel. Which means, writing their own editor, IDE, bug tracking, version control, wiki, web framework, blog

Team Leadership

  • Live each day to it’s potential.
  • Today is a new and improved day. It only gets better.
  • Every day has the potential to be your best day of your life, because today is the only day that matters.
  • Love what you do is a key to success.
  • If you are about to fail, do it with flair.
  • People need to learn how to disrupt an entrenched business, product, or industry. There should be a class on disruption.
  • Always walk into a meeting with pen and notepad.
  • If you want to survive, you need to adapt.
  • If plan A doesn’t work move on to plan B, and it that doesn’t work, move to plan… That is why we have 26 letters in the alphabet.
  • The most critical aspect of making a mistake is usually not the mistake but how you respond to it.
  • Ideas aspire to be more than just ideas.
  • Practice what you preach and live what you teach.
  • One easy way to think outside the box is to add an extra dimension.
  • The fact that unicorns aren’t real doesn’t mean that people won’t buy unicorn bacon.

Product Placement

  • You’ll know if Google+ is successful when a congressman’s penises are accidentally posted and shared on it.
  • What is up with these Google+ invites? The seem to be worth their weight in BitCoins.
  • By the way he writes, I think David @Pogue is Apple’s VP of Marketing.
  • I like the Migration Assistant in OS X. You can migrate data and apps to a new Mac from another Mac, mac backup, or external drive.
  • Did @airbnb use the same black hat techniques that picture collectors and questionable dating sites use on @craigslist?
  • The Swiss should make a Swiss Army iPod case.
  • Companies are using positive tweets about their products as endorsements in commercials. I wonder if those Twitter users got compensation.
  • How many screws does it take to take out a hard drive from a Mac Book Pro? I lost count at 21 screws and two different screw drivers.
  • I don’t even know what language I speak when I order at Starbucks. Iced chai grande Americano hella latte extra cafe con leche fo shizzle.

Quote

  • Checking in is so 2009. – Dave Matthews #TWiST
  • If it’s printed, it’s no longer news. – @jbminn
  • You can make a buck with cat pictures – Steve Yegge
  • The impossible might take a while. – Scott Heiferman, #TWIST

Question

  • Would you pay an extra $100 to buy an iPad made in the US?
  • Do super models have role models?
  • What is your innovation strategy?
  • How smart is you network, team, or organization?
  • How much is the whole of the USA worth?
  • Since when is it a feature to have your product available in white?
  • Is Instagram the new Polaroid?
  • Will any software application last 100 years?
  • Do you give a tip on pick up or only on delivery?

Randumb

  • And then Jobs said, “Let there be an app market.” – The Book of Jobs
  • I don’t respond well to BS.
  • Love is a by product of accepting yourself and others as they are.
  • It’s always a good morning when you can sleep in.
  • To sleep or not to sleep, that is the dream.
  • Be you. Do you. Get yours.
  • Love love and live for life.
  • Love is transdimensional.
  • Love don’t cost a thing if you file for chapter 11.
  • Lifetime movies is like porn for women.
  • Any place that claims to be the happiest place on earth is really covering something deep.
  • I wish my closet functioned like the TARDIS from Doctor Who, so my fashion could always current and I could have extra space.
  • I’m a register member of the Ninja party but I have some Pirate party leanings.
  • The most read book is Facebook.
  • If only we could solve all of the world’s problems with a dance battle.
  • Heading out to a beerbeque.
  • Empathy is my religion.
  • Everyday should be like Friday.
  • Hollywood can follow up a successful movie with a sequel, a prequel or an alternative timeline-quel.
  • Twitter is where quotes go to get misquoted and then retweeted.

Jun 30 2011

Microsoft BizSpark

In the era of Apple fanboys and opinionated Ruby on Rails developers, it might not be cool to use Microsoft tools and products. It seems that startup will tend to use Ruby over .NET, Google Docs instead of Microsoft Office, OS X or Ubuntu in lieu of Windows. I’ve never been dogmatic about the technology I use. I’m a pragmatic programmer and the fact of the matter is that a large number of computer users still rely on Microsoft products. In the financial industry, Excel spreadsheets are traded like baseball cards. Microsoft realizes that they are not the cool kids in the block, at least amongst Silicon Valley startups, and perhaps that is why the started the Microsoft BizSpark program.

I’ve been one to always chase my customers and users, not trends and fads. That is why, I’ve been a huge fan of Microsoft DreamSpark and Microsoft BizSpark. Microsoft BizSpark is a program that allows small startups have access to many of its products, frameworks, tools, and resources for free.

Microsoft BizSpark Software Download

Microsoft BizSpark Software Download

Through BizSpark you can get access to applications such as Visual Studio 2010 Ultimate, Office for Mac 2011, Microsoft Windows 3.1 through Windows Vista, and much more for free. There is no need for your CTO to look for serial numbers for Windows Server 2008 on Google and warez sites. BizSpark gives you legit licenses to key Microsoft products.

I’m a huge fan of any company that supports startups and software developers in general. I can’t say enough nice things about Microsoft BizSpark, even if they paid me. And not, they didn’t pay me but I am a proud member. I only wish that the Microsoft BizSpark program also included hardware.


Jun 28 2011

I Will Not Do Your Homework

I love to share solutions to issues I’ve encountered and explaining programming concepts in layman terms. I do it because that is how I learn. As a side effect of the tutorials and blog posts I write, I occasionally get a nice comment from someone that found some article I posted a while back found useful. I love to get those kinds of comments. Off course, I even appreciate the comments that correct my grammar, spelling, or misconception in a post I wrote 2 or 3 years ago. The one comment I usually don’t react well to is the one from some poor developer that sends me his requirements and asks for me to “provide proper solution.” Recently I got one such request via a comments. It stated…

I need to create a single page spreadsheet web application in RAILS which should be exactly like google doc(should not use google docs API). It should have the following features…

The comment went on and on that it should be a multi-user collaborate real time application with authentication, authorization, and hot keys support to boot.

I can relate with programmer stuck with a daunting problem. More than once have I been tasked with problem outside my domain expertise, and even application. I’ve had to walk through end users with problems that are peripheral to the application I was involved with. For example, I’ve had to track problems down due to network issues and security settings on shared drives in client sites because the some server could read files from that location. Like most developers, I’ve posted comments asking for help to blog articles on issues I’ve been stuck on, such as when using a particular version of a web service library with a particular web application server. That said, I’ve never asked someone to provide me a proper solution to a homework or other project.


Jun 27 2011

Where To Download Previous Versions of Java

Earlier this week I received the following Skype message from a co-worker.

[10:10:15 AM] i can not find an where to download official Java 6 update 23
[10:10:21 AM] mostly its from third party sites

I can’t even begin to state how many things I find wrong from the above message. Normally I would just reply with a link to Let Me Google That For You, such as the following search for Java 6 Update 23 download. I decided against being a wise guy, and found the Java archive site because it seen this question come up before for other software packages. Not all, but most software vendors such as Oracle, MySQL, Perforce, and others make available previous versions of their tools or software. It’s usually in a small link at the bottom of the main download the reads software archive, older version, previous releases, or something to that effect.

In the case of Java, Oracle has a Java Technology Products Download page where you can find the older versions of the JDK, JRE, and other Java framework and toolkits.


Jun 1 2011

Never Underestimate Your User

Never underestimate your users, if you do you’ll soon hear about it. Software is often built with assumptions about your users. Your user will be an accountant, your user will understand the labels, your user has experience with Excel, your user is this, that, and the other. Never make blanket assumptions of how your software will be used.

There are assumptions built in in every input field and user control element in software. Common assumptions baked in the User Interface of applications is that your users live in the United States, that they have a zip code or a telephone of a certain pattern. I’ve seen problems with file upload mechanisms when users try to upload a 500 MB PDF document and the server crashes, or when a user tries to enter 10,000 character comment and the database truncates 90% of it.

Facebook and Twitter have learned how to hedge users behavior that could lead to problems with limitations. Twitter best exemplifies this by the 140 character limit of each status update and the 2000 limit on the number each twitter account can follow. The 2000 follower limit can be increased but only when at least that many people follow you back. Facebook has a similar hard coded number of friends you can have.

The less assumptions you built into the software, the easier to use it will be. But as you remove assumptions, consider having caps, limits, and restrictions in case you start to have scaling issues.


May 31 2011

CEO of You

I’ve worked for large companies and I’ve worked with small companies. There is a big difference in your day to day responsibilities when working in either of these environments. In a large company, you know your rank, your salary pay, and your place in the org chart. In a large company, you can predict product releases by the conference room schedule months in advance. I remember working on a project in a large organization and I wanted to add a boolean property to a single database table but the there was so much bureaucracy in place that that it took two meetings and the review of the local database expert who used his tenure to carve out a little fiefdom for himself.

It’s completely different in a small organization. In a startup, there is no room for bureaucracies, or org charts with more than two levels, or egos of experts but at the same time everyone is the CEO of something. In a company of less then 10 people, there is no room for middle managers, everyone has to manage themselves, everybody has to be a CEO of something. In such an organization, you may have to be the technical lead, the hiring manager, or the vice president of phone system, or directory of version control, as well as the senior technical writer, and even maintenance guy. In a small organization you have to do it all. In a small organization, when printer is stops functioning you are the printer expert. When the phone system stops functioning, you need to take the lead.

I’ve found that this approach also works for other aspects of life. There are people that wait for a scheduled meeting to to figure out what they need to do next, I like to get done.