November 22, 2008

Ryan A. Graves

Teens in Tech Conference

Teens In Tech Conf

A few months back ActionsTalk spotlighted Daniel Brusilovsky of Teens in Tech. Daniel is a young podcaster who also works at Qik out in the valley. He’s recently launched his company Teens in Tech (TiT, haha) that helps young bloggers and podcaster launch their own, and hosts them. It’s an inevitably growing addressable market and Daniel seems to be the right person to reach them.

Sam Levin and Daniel are launching a Teens in Tech Conference on January 31, 2009 at Microsoft in San Francisco and the conference has a very impressive line-up of teen startup success stories. Jessica Mah who is now a Jr. at Berkley, was one of the younger entrepreneurs when she ran her own enterprise web solutions company before attending Simon’s Rock, the Early College. I highly recommend checking out the Teens in Tech conference. Based on what Daniel has accomplished in the past its bound to be an awesome event!

Here’s the standard copy on the Teens in Tech Conference:

The Teens in Tech Conference is bringing youth the technology together in 2009. The main goal of the Teens in Tech Conference is to show that teenagers are changing both Technology and the World - despite their age. This conference is targeting the teenage audience, as well as companies who want to reach that audience.

The conference was founded by entrepreneur Daniel Brusilovsky, and brought along Sam Levin, one of the Valley’s best consultants to help with planning. Daniel also brought along Social Media experts Erica O’Grady and Adam Jackson on board as well. The Teens in Tech Conference is part of the Teens in Tech Media Group.

by Ryan Graves at November 22, 2008 02:44 AM

November 21, 2008

Ryan A. Graves

“So maybe a recession is a good time to start a startup. It’s hard to say whether advantages like lack of competition outweigh disadvantages like reluctant investors. But it doesn’t matter much either way. It’s the people that matter. And for a given set of people working on a given technology, the time to act is always now.”

—Paul Graham on Why to Start a Startup in a Bad Economy

by Ryan Graves at November 21, 2008 01:33 PM

Pimp my Gmail

Gmail has always catered to the tech elite and now it appears they are catering to my mother. (She loves the colors!) Gmail followed their iGoogle lead and added themes to Gmail! Apparently, this has been one of the number one requests from Gmail users. Personally, I’m still rockin the traditional Gmail theme because I think it’s brings the most emphasis to the actual emails, which incidentally is why I am on Gmail. Just like the iGoogle themes their are dynamic themes that change with the weather and time of day and there is a theme that makes you feel like your using Gmail on MS DOS.

Let me know what theme you are using!

Now showing: Gmail themes.

image from cnet news

by Ryan Graves at November 21, 2008 01:46 AM

November 20, 2008

Dojo Learning Blog

How we built Dojo Learning - part 1

We've been working on Dojo Learning for over a year now and we're progressing nicely towards a really major update we're calling "Dojo 2.0". It's still a couple months away, but we think we've got something that will definitely knock some socks off. I can't say any more yet, but we'll have more details on that soon enough :)

I've also been doing software development for about 10 years now professionally, so I've seen my share of what works and what doesn't. And I learned most of what doesn't the hard way.

But instead of officially employing a particular software development methodology as a standard here at Dojo, we simply try to practice a few informal principles in all of our thinking about Dojo.

Over the next few posts, I'm going to break those down and talk about each one. The first is about managing ideas.

Keep a list of ideas

This may seem like an obvious one to many, but a surprising number of people don't record their ideas and so those ideas simply come and go.

We have a huge number of ideas for new features and improvements to Dojo Learning. We record them all to a big list and revisit it periodically. Most of them will likely never see the light of day, and many end up being solved indirectly anyway (I'll get to that later).

The important thing here is just to keep a list, to keep adding to it, and make it accessible to everyone so they can add to it too. And any time a user suggests something, put it in the list.

We also keep a list of ideas that don't fit the project, but may be things we branch into later, or that pieces of what we've made before can be used towards solving.

You never know where an idea will lead, so jot them down. This is the easiest thing you can do, and gives you an endless supply of material for future brainstorming and planning sessions.

If you liked this post, make sure you subscribe to our blog by RSS or email so you catch the rest of this series of posts.

November 20, 2008 08:48 PM

Ryan A. Graves

Why the online marketplace will not go out of style

homepageThe online market place will live and live and live. The same ones might not always exist but the concept will always live on the web because of the value that this type of a site adds to its chosen industry; it’s enormous. These are the 5 reason why the online marketplace is hot and will stay that way.

1) People want to buy stuff

Whether you like it or not the US is a spending economy, and sadly I don’t see that changing. Even when the economy is in shambles it’s my guess that when we come out of this recession the savings rate in America will still be horrendous. Regardless of country people need/want “stuff” and they are going to spend for it. If anything online marketplaces, especially those that are an auction, are going to increase during down times because people see these sites as less expensive alternatives to the same end. Why buy a desk in the store when I can find the same one on Craiglist or Ebay for cheaper? As times get tight people will embrace discount focused auctions to consume the same and hopefully spend less.

2) The web leverages a global pool

The value of most web based social solutions is that the web, like no other tool, can extract value from otherwise unreachable areas.  Chicago based, crowdSPRING who is an online market place for creatives and buyers to trade cash for designs has leveraged over 125 countries to reach this goal. It is exactly that kind of reach that will cause an online free market environment to be hugely successful! A web based marketplace gives a voice (power) to both sides of a transaction. If a user doesn’t pay…bad rating. If a seller doesn’t deliver…bad ratings and possible removal from the tool. Similar to the success of many open-source software development projects, when the playing field is opened up the quality of the players drastically improves.

3) Choice

People spend more when they have choices on what to spend it on. When individuals feel like they have control over what they are receiving they feel power and are more likely to spend money. However, I will say that the opposite can be true as well. Many sites have grown strong businesses by offering one and only one product at a time, but ultimately people want choice and freedom on their purchases. If someone can find exactly what they are looking for in an online marketplace they are much more likely to come back and look next time!

4) Customized protection

For any giving marketplace there has to be rules and protections for those involved. Ever heard of the SEC? They impose rules on a little marketplace call the New York Stock Exchange. Without the SEC’s rules imposed on the NYSE investors would never be comfortable putting such huge dollar amounts in that market. The system has to run strict to a set of rules that keep the best interest of the existence of the market in mind first before the interests of any given party in the market.  To use crowdSPRING as an example again, that is where they are so special. Both the companies looking to purchase the work of a designer and the designer want their work to be protected and they want to feel comfortable about how the rewards system will work. If a designer submits something for a client they need the confidence that the money will eventually be delivered which is why crowdSPRING actually holds those funds in escrow until the end of the project. It’s these type of rules and customizations that make this marketplace so valuable.

5) Constant change

A physical marketplace might be able to act as a farmers market Saturday and an art market on Sunday, but an online marketplace can be MUCH more! An online market place can be very specific like Etsy which sells only hand made products or very broad like Ebay. The ability to grow quickly but stay very customized and specific is one of the most powerful things an online market place has to offer. Adaptability is something that any developing business model needs to have. You never quite know what your customer base is going to demand of you, and you need to be able to respond. If they want a legal contract behind their transactions in order to protect them than so be it…crowdSPRING does!

===

I’m sure this isn’t everything. I’d love to hear other reasons you think online marketplaces will or will not continue to be huge on the web.

by Ryan Graves at November 20, 2008 01:03 PM

November 19, 2008

WebAppropriate

Launching A UK Web Startup

Sorry for the wait; SoIndustry.com, an industry-focused broadcasting tool with a mission statement to ‘help you to keep in touch with your industry’, is the product that has been in an extended stealth development period here at Web Appropriate - but it’s now live in a private beta, and you can register an account right now.

SoIndustry Landing Page

SoIndustry takes inspiration from existing social web applications & micro-blogging services (as first outlined in the Web Appropriate ‘About’ page many, many months ago) mixes in concepts which I’ve really wanted to see on the Web, refines previously existing user interactions, and pitches/wraps-up/packages it all in a way that isn’t available anywhere else.

There’s so much more that could be said here, but the site itself will do a better job and it would be fantastic to have you registered and using the service and giving real feedback, rather than just reading about SoIndustry. If you’ve already signed-up, we’ll be activating your account asap. If you know someone already using SoIndustry, they can send you a beta invitation with which you can jump the queue.

The Web Appropriate Blog will be used for posting information about running a UK web startup, so please stay tuned, or subscribe to the RSS feed, if you haven’t done so already.

by Neil at November 19, 2008 01:49 PM

Ryan A. Graves

Understanding the importance of bottom up growth

Bottom up is the way to grow anything these days. Construction workers have know this for…well, forever. Surprisingly the idea of bottom up growth is just getting around to startups, politicians, and corporate America… probably in that order.

37 Signals

When Jason Fried, founder of 37 Signals was first building his company he was inspired by chefs. He shared at a talk recently that he found it interesting that even though chefs have all these cooking secrets they don’t hesitate to share them. Chefs write books about their secrets and host TV shows giving their secrets away. Their “secrets” became their product! This appeals to any individual. Myself for example, with no cooking stills at all (my gf can attest), am very intrigued by some cooking shows just because they are teaching me to be the expert. In reality what they are doing is giving me the power of information. This power of information is what reaches and appeals everyone. I don’t know anyone that doesn’t want the power of information. What Jason discovered is that empowering people with information can create a huge following or audience and that audience becomes a few things:

  • a powerful marketing team
  • a powerful support team
  • a very powerful and lucrative customer base

This realization has helped 37 Signals to become a very profitable software company with a huge audience on its chosen communication platform, their blog Signal vs. Noise. This ground up approach, starting not with big name software publications or traditional “respected” media, but with their own blog that anyone could subscribe to proved to be hugely successful.

Building Obama

The next, perfect, example of embracing bottom up growth is the completely unexpected win of PE Barack Obama in the presidential election 2 weeks ago. There has been no shortage of coverage on how PE Obama has utilized non-traditional media to build a huge following of over “8,000 Web-based affinity groups, 750,000 active volunteers, and 1,276,000 donors“. It certainly shows that by reaching out through social media tools DIRECTLY to the people and not only through debates, press conferences, and traditional media PE Obama was able to create a loyalty to his cause maybe stronger than any in the past. He certainly was the first to use technology is such a huge way during a presidential campaign. Whether it directly affected votes I’m sure could be debated but certainly through donations his involvement and attention to this group had an enormous and undeniable effect.

As startups may have realized this trend first, as is normal in the tech world, the political world has now shifted in the realization that reaching the “common man” directly is a very powerful act. Daniel Debow, CEO of Rypple, wrote in his recent Huffington Post blog post:

I think Obama’s improbable election will be the final “evidence” point that convinces the business world that they need to understand the change that is coming to their way.

I believe this to be very true. Adapting to change is what keeps a business alive at any level and smart corporations must and will react to this shift.

GE opens up to bottom up

Just as getting into politics on this blog is something that I almost never do I’m going to comment on my employer General Electric because it has recently made moves towards embracing bottom up growth that I totally respect.

GE recently launched a site called GEreports.com. GEreports is basically a blog for GE. They cover anything from how much the company is spending on it’s revolutionary ecoimagination campaign, to posting talks from CEO Jeff Immelt (which are really awesome in person). They share recent new products from all of the different GE portfolio businesses and overall does a good job of showing the public (the bottom) what they are up to. I’m sure the growth of GEreports.com will not sky rocket right away but as large corporate blogs grow and as companies let their communications departments have a bit more freedom and openness I think that they could become very powerful communication platforms for the general public, investors, and in my case…employees.

This last move from closed to open and from top down to bottom up that is beginning in corporate America is a bit surprising to me, but very encouraging. As we grind through a very tough economic state we see a call for great regulation and disclosure from corp America. The start of blogs and other communication platforms from corporations to the public will do nothing but encourage this sort of open and honest behavior. I’m not naive enough to think that if a corporation has a blog it means they are immune to scandal. However, what it does mean is that at least someone inside the organization understands the importance of reaching to the bottom without using traditional, slow, and overly scrubbed media to inspire openness and growth.

Reblog this post [with Zemanta]

by Ryan Graves at November 19, 2008 01:36 AM

November 18, 2008

Ryan A. Graves

Bootstrapping a startup - what to focus on

Homecoming_NewYork 015Image by graves.ryan via FlickrI’ve just finished re-reading the ‘The Art of Bootstrapping‘ chapter in The Art of the Start and 3 main focuses stood out to me. I want to elaborate on why they stood out to me and why they are the most important underlying themes in this chapter. If you’ve not yet read the book I encourage you to.  I use it as a startup reference guide and a motivator because it truly does inspire a positive attitude for an entrepreneur when questioning your plan of action.

Get the job done.

The first step is just to execute. Without the constant focus on execution in your startup organization you will inevitably waste time and money. Being efficient with those two resources are the ultimate key to good bootstrapping! It is extremely rare that a startup succeeds because of the idea. However, it is common that a startup succeeds because of its ability to execute with a good team. Go out and get the job done with what you have, just do it. Swoosh.

Get the job done fast.

Remember to the two critical resources to bootstrapping? Time and Money. Both are critical in building a startups product and team. Money is the obvious because unless you raise capital you only have so much of it. And, time is critical because whether you think there is or not, someone else is out there trying to do the same thing. Finding creative ways to minimize your spend is the strategy part. Offer equity, or creative vacation schedules for lower salaries, in short, do what you have to do to last. These things are critical now that the economy is in the state it’s in.

Focus on functionality and ignore imperfections. If you create your product to get the job done and do what it is intended to do you will be able to find people to use it, and hopefully pay for it. It is absolutely ok to have your first customers paying or not to be your first production testers. Paying customers will absolutely give you feedback, it will come fast and heavy but it will be the feedback you need to then create and awesome product.

Invest in what got the job done.

The gist here is reward what worked. If your incentive structure is what got you great people continue with that. It will be worth giving up small shares of equity for the right people early on. These are the people that will be the foundation of growth for your startup.

Invest in great individuals. Right now everyone seems to be laying off as if its the cool thing to do. Well if your next hire brings more value to your organization than the $$ you would have saved by firing someone, then no need for layoffs. Find the people that will bring big value to your company. In this economy there are a lot of valuable people looking for jobs…see this as an opportunity!

Final Thought

I’ve said this a lot recently, but right now is a great time to startup. It’s an even better time to bootstrap. Follow Guy’s advice, start as a service if you have to, I am. Just get going and focus on executing quickly and getting the job done. Then reward what got the job done.

Reblog this post [with Zemanta]

by Ryan Graves at November 18, 2008 05:26 AM

November 14, 2008

Dojo Learning Blog

Thoughts on Software-as-a-Service (SaaS) and interoperability

Here are some thoughts on our API and APIs for Software-as-a-Service companies in general that I wrote in an email recently and thought they might be worth making public.

API in plain English

API is a programming term, which stands for Application Programming Interface. An API is a way of accessing your data directly, instead of going through our website in your browser. A developer or administrator could use it for example to do regular backups themselves, to export data into another application, or to build an entire application outside of our site itself.

We have a few ideas of our own that we'd like to build on top of our API, but essentially it opens things up for customers and enables many possibilities that we may not have thought of ourselves.

Content ownership in software

We see this as very important since content ownership needs to rest with the customer, not with us (the service provider). This has always been a big issue in software, not just with SaaS services, but SaaS does change things up.

Traditionally, proprietary software used proprietary file formats, meaning that while you had your files, you were still locked into their file format, and so you had no choice but to use that software, or change with some difficulty. The Open Source software movement helped change that by raising awareness and by ensuring the code and also the data formats were open and interoperable.

Where SaaS changes things

The problem with the traditional software model is that by installing software yourself, you bear the burden of maintaining that software and the machines it runs on. For complex software, this often requires a full-time system administrator to be hired.

Software-as-a-Service solves that by letting us be your software host so we take care of the technical details for you, which can save a company lots of money, but it can potentially put your data into a closed scenario again.

So customers should be careful to make sure any vendor provides a means of accessing the data in a way they can take with them, that way the control and ownership rests where it belongs, with the customer and not the vendor.

Future interoperability

Over time, I believe standards will continue to develop and be adopted by SaaS companies too, and I think it's in everyone's best interest for that to happen.

Just like today OpenOffice.org can import and export Word files and new file standards are emerging for office documents, so too will ways of standardizing data formats for more specific applications like e-learning. And in the meantime, if we all do our part to make sure customers maintain clear ownership of their data, then we ought to be well poised for a future where customer relationships with SaaS services are built on quality, value and trust.

November 14, 2008 08:35 PM

David's Computer Stuff Journal

Ticker Widgets on Your Mobile Phone?

I'm doing a bit of research for a microemulator feature request I filed. link

In short, the question is: on your cell phone's Java ME implementation, does the ticker scroll across the top get reset and start again from the side, or does the text get updated without the ticker restarting from the side, as in this example:

http://www.heclbuilder.com/scripts/show/155

On my Nokia 6121, it starts the text over each time it gets updated, which isn't how I wanted it to work. The debate regarding microemulator is how it ought to behave - update the text, or restart from the right, like the Sun emulator and my Nokia phone. To that end, we're looking for you to let us know what your phone does. Thanks!

by David N. Welton at November 14, 2008 06:15 PM

Ruby YAML Bug & Fix

Besides the nasty Ubuntu bug, which I was unable to do anything meaningful with, yesterday I also found a small bug in Ruby's YAML package:

irb(main):004:0> YAML::load('1900-01-01T00:00:00+00:00')
ArgumentError: time out of range

The problem is that the YAML implementation that Ruby is using, called "syck" interprets that kind of date as something that it should make a Time for:

        else if ( strcmp( type_id, "timestamp#iso8601" ) == 0 )
        {
            obj = rb_syck_mktime( n->data.str->ptr, n->data.str->len );

So I did a little bit of hacking on the C code, and made it create a DateTime object instead. My fix works, although I'm not sure it's the best possible way of tackling the problem. The patch is attached to the bug report here:

http://redmine.ruby-lang.org/issues/show/752

This matters because my Rails text fixtures had some dates in them that were quite old, and this was causing problems.

by David N. Welton at November 14, 2008 02:55 PM

Ryan A. Graves

Spot.us launches in SF Bay Area

A good friend of mine Dave Cohn (who has also contributed to ActionsTalk) launched a project that he has been working on for 6+ months this week. Spot.Us is coined as community funded reporting and is a result of a grant Dave received from the Knight News Challenge. Dave is a very accomplished journalist having written for Wired Magazine and graduated from Columbia University. His passionate for the future of reporting is inspiring and he is dedicated to the end goal of improving the current news reporting model.

spotus2.png

With Spot.Us users can log in and donate to have a certain topic reported on. If a news station donate they must donate over 50% in order to have exclusive rights to that story. If the amount donated go’s over the needed amount users get credit towards their next donation to Spot.Us.

Spot.Us is a nonprofit project of the Center for Media Change. We are an open source project, to pioneer “community funded reporting.” Through Spot.Us the public can commission journalists to do investigations on important and perhaps overlooked stories. All donations are tax deductible and if a news organization buys exclusive rights to the content, your donation will be reimbursed. Otherwise, all content is made available to all through a Creative Commons license. It’s a marketplace where independent reporters, community members and news organizations can come together and collaborate.

David Cohn has worked with journalism luminaries such as Jay Rosen and Jeff Jarvis. He has been working in the citizen journalism movement since 2005 on projects like NewAssignment.Net, Assignment Zero, Beat Blogging, and Off The Bus. He also co-organized the first and second Networked Journalism Summit. Spot.Us is informed by the growing citizen journalism movement. Spot.Us is an attempt to ensure that journalism remain a strong and vital part of our local democracies as a participatory process, not just a product.

spotus - nytimes quote

This site, due to Dave’s location has launched only in San Fran, but I’m sure with the attention that this project is sure to received they will be in other cities soon. Make sure to check out Spot.Us and Dave’s blog!


Spot.Us - Community Funded Reporting Intro from Digidave

by Ryan Graves at November 14, 2008 02:38 PM

November 13, 2008

Ryan A. Graves

37Signals will be a huge guide for SocialDreamium

As SocialDreamium works to build a customer base with both the service side of our business and the product side of our business we will use the philosophies shared here by CEO of 37Signals Jason Fried.

I truly believe in having examples that you follow and learn from 37Signals will be that example for SocialDreamium.

Jason Fried at the Business Software Conference ss

by Ryan Graves at November 13, 2008 11:10 PM

David's Computer Stuff Journal

Ubuntu Intrepid Regression: Beware of Wireless and WPA

A lot of people, myself included as of the upgrade I did last night, seem to be having trouble using certain wireless chipsets with WPA:

https://bugs.edge.launchpad.net/ubuntu/intrepid/+source/wpasupplicant/+bug/272185

There are a lot of people following this one, and you have to think that for every person who looked it up, googled it, and dug around to find that page, registered with the site, and so on, there are several more who simply gave up and went back to Windows or something.

I thought a couple of weeks was probably a good amount of time for the bugs to be shaken out of Intrepid, but I thought wrong.

Here is a set of search terms that can be used to look through "regression-potential" bugs, which if I'm not mistaken, ought to mean those things that worked in previous versions of Ubuntu but now no longer work. In my case, there's an extra little bit of annoyance because I am running on a Dell laptop that I bought with Ubuntu preinstalled, and you'd think the Ubuntu guys would have a few sitting around to do some testing with prior to release.

I spent some time digging around in the code for the network manager, wpasupplicant, and a brief look at the kernel code, but there was nothing that made much sense, so I guess I'll just have to wait for the fix like everyone else... wish I could help, somehow, though.

by David N. Welton at November 13, 2008 07:40 PM

Ryan A. Graves

Google Chat Adds Video

I know that every blog on the planet is going to have a post about how Google adds video chat but I thought that if its something that interests me and its something that will change the tools I use to communicate on the web I would still write about it. Bear with me…

google chat pic

Google’s new chat service looks to be amazing. In all of my testing of video chat tools for ActionsTalk I’ve found that iChat on the Mac has the best video quality and Skype video chat is the quickest (less delays). Now I’ve tested Google chat against those two tools on those two criteria and it wins both. The video quality is really amazing especially when you keep the view at the default size (full screen is pretty sweet though). Also, the speed of the video is phenomenal! Blake and I use video chat all the time to collaborate on startup projects and I think we’ve found the tool that will replace the others. We used it for about an hour and it did freeze once though…I hardly consider this a FAIL…it’s early.

I’ve not tested out the record functionality yet but it looks like it is there… and the view yourself window if very flexible with sizing (a plus for recording).  I’ll definitely be giving Google video chat my attention over the next few days!

A quick note about Google: They seem to be able to enter a market so quickly and with such huge force. It is very possible that because of the large number of users on Gmail, services like Skype will have significant drops in users. Google is currently and will be for sometime a very scary force for ‘almost’ any startup. A startup can work for months or even years and spend tons of money on developing a product and can be put to rest in a matter of days if Google enters the market, BEWARE. However, startups should also see this as a huge opportunity. Why you ask? Because if Google wants to enter a market and you have a leading product $$$aquisitions bells start ringing$$$. The lesson here is beware and prepare Google ain’t slowin down.

Let me know what you think of the new Google video chat. Better, worse, better in some instances?

Reblog this post [with Zemanta]

by Ryan Graves at November 13, 2008 01:31 PM

November 12, 2008

Ryan A. Graves

Rypple - Feedback Finally. And Done Right!

Today I was introduced to a new product that could change the way feedback is given and received in the workplace. After writing about what is important to Gen Y employees and how employers are going to have to respond to these changes, the founder of Rypple (pronounced “ripple”) reached out to talk about their new product.

Rypple logo In short, Rypple works to take away the difficulty of giving and receiving feedback in the workplace. However, at the same time they are addressing a critical requirement in professional satisfaction…the feeling of personal, yes PERSONAL development. There is a huge difference between ones need for personal development and ones need for professional development. The main difference lies in the fact that in this day and age people don’t always know what their next profession may be. For example, I could work as an artist, loving my creative freedoms, loving painting, and loving the industry but perhaps the greatest skill I take away from the work is my ability to sell the artwork? (I understand that I’m probably butchering the beautiful profession that is being an artist, my apologies) The same principles may apply elsewhere. If I’m growing my sales skills I can apply those skills to literally any industry. I see these developments as personal developments, where in the example professional developments may be my improved ability to paint using oils vs. another medium.

As there is an increased focus on personal development in the workplace someone or some tool needs to facilitate that change. Rypple has set out to do just that. This tool simplifies the process of asking for feedback from ones peers or managers. In a very clean and intuitive interface you can take micro-polls on your performance. Whether it’s on a sales pitch or project meeting you solicit and receive anonymous feedback. You can tag your question/poll and then your peers will “grade” or rate you on those tagged attributes. This way you can track your improvement on certain topic areas over time. This is the exact type of direct and continuous that Gen Y is looking for!

As your co-workers receive our micro-poll they rate you 1 to 5 on your topic categories and give you both positive and constructive feedback. Again this is all anonymous and the person giving the feedback knows exactly how many people you asked for feedback. This allows them to decide just how candid their feedback should be. Naturally, the more people you ask for feedback the more honest ones feedback will be.

The tool also allows you to track all of your feedback. It knows how many people you asked for each micro-poll and it knows what attributes or topic areas you tagged to each poll. Then it creates a “cloud tag” like tracker for your attributes. The attributes (see right) will be larger the more times you ask for feedback on them. You can always go back to tool and check your ratings on a specific event or on a specific attribute. These will be very helpful in identifying your goals over a period of time and relating specific work events to those overall goals.

Lastly, any good web application today must have a social aspect to the site. As you invite reviewers to grade/rate you on micro-polls the tool will save those contacts. You can tag the type of relationship you have with that individual and even group them. You can include them as ‘All Managers’, ‘Direct Reports’, or simply ‘colleague’s’. You can even important contacts from outside tools like Outlook. This removes the dreaded hassle of populating yet another social web app.

What is very appealing to me about Rypple is that it’s not just the Gen Y crowd who will be able to easily adapt to using this tool. As long as the “boomers” realize the need for better feedback in the workplace, they will realize the simplicity of using Rypple. It’s a very simple workflow and due to it’s email integration no other site or instance needs to be used to give feedback.

Yesterday I had an awesome conversation with Daniel Debow, co-founder of Rypple. Daniel is also a Huffington Post blogger, and former VP of Corporate Development and Marketing for Workbrain. It is obvious to me that he and his startup are focused on the right things! As I read his bio I was blown away as he has his JD & MBA from U Toronto, and a masters degree in Law, Science, & Tech from Stanford. He has successfully helped build and then sell Workbrain and now is focusing on a HUGE need in the workforce…personal development.

I’m going to be using Rypple in a small team at work and hopefully in a few weeks I’ll be able to write a post-use review of the product with an improved insight into its usability and overall use. In the meantime if you’ve used Rypple or are interested in trying out the product please comment below and I will set you up either Daniel or a product key. Cheers.

by Ryan Graves at November 12, 2008 02:19 PM

November 11, 2008

David's Computer Stuff Journal

Another "Mysql Doesn't Do that?!" Moment

http://adam.blog.heroku.com/past/2008/9/3/ddl_transactions/

I think the real reason there was resistance to this change is that MySQL doesn't support DDL transactions; and wrapping migrations in a transaction is mostly pointless without this feature. Since MySQL doesn't support it, most Rubyists don't know what DDL transactions are - so here's a quick primer on this incredibly useful and certainly underrated feature.

DDL = data definition language, also known as the schema. DDL commands include CREATE TABLE, DROP TABLE, ALTER TABLE, and CREATE INDEX. DDL transaction support means that the following sequence of SQL commands will not modify your database

I never even thought of that. I was fairly confident in my vision of Postgres getting faster and faster, and Mysql become a "real" database... that the two systems were converging on something resembling a common speed/feature set. But things like this still occasionally rear their ugly heads and I'm happy to be a Postgres user.

by David N. Welton at November 11, 2008 09:54 PM

Quick, Dirty Rails Deployment Benchmarks

I have started to look at Passenger (mod_rails) + "Ruby Enterprise Edition" (which is just a corny name for a nice GC hack that significantly reduces memory consumption) because of the aforementioned problem with Slicehost's x86_64 amplifying Rails' already voracious memory gobbling. So I did a few crappy benchmarks, comparing Mongrel to mod_fcgid and mod_rails. I didn't look at concurrency, as that's a can of worms I wasn't prepared to open. I just wanted to see what raw speed was like. I used two methods from a project of mine, one, showall is quite DB intensive, and index does hit the DB, but not so much. 

Bad Rails Benchmarks

Looks like mod_fcgid and mod_rails (both running in devel mode) are faster, at least for this very unscientific benchmark. One other advantage those two Apache modules have is that they make life simpler - mod_rails even more than mod_fcgid, and don't require an alphabet soup of mongrels and proxies and nginx, lighttpd or whatever the event-based server du jour is. Like I said though, the benchmarks are quick and dirty, and probably have issues. I'd be curious to see better ones *as long as they include mod_fcgid*.

Incidentally, it looks like linode.com uses regular x86 servers, so if you're doing Rails, this is definitely a point in their favor, or at least something to consider when you compare the memory that they and slicehost give you.

by David N. Welton at November 11, 2008 08:07 PM

Björn Günzel

Impressions from the iPhone Tech Talk in Berlin (kind of)

The bad news is, Apple needlessly slapped a “confidential” sign across the tech talk today, so nobody is allowed to write anything about it or post any pictures.

I think I can nevertheless write some thoughts I took away, without giving away anything about the content of the sessions. So what I write might have been inspired by the lectures, or by something completely unrelated, like surfing a web site or talking to people.

Some things to know first: I left early because I got bored, so I missed roughly the last two lectures. Also, I don’t have an iPhone myself yet, and my friends would perhaps even describe me as an Apple hater. I really don’t like Apple’s restrictive policies, and I don’t even like OS X, but that is a story for another post. The iPhone is nice enough to make me overlook the general flaws of Apple. For one thing, I gave up on mobile games development with Java because it became too tedious to support all the available devices. The iPhone is one device (OK, strictly speaking three: old iPhone, iPhone 3G and iPod touch) that has sold several million times, making it possible to develop useful applications targeted at one device only. And Apple really got a lot of things right, I don’t think any other phone comes close in usability.

If I don’t have an iPhone yet, it is because I don’t like the conditions of the T-Mobile Germany contracts. Specifically the UMTS bandwidth limitation seems silly, since the iPhone makes it possible to surf normal web sites. So I would expect the T-Mobile bandwidth to be consumed rather quickly.

Without a doubt, a lot of fun can be had with the iPhone, and a lot of fun applications already exist.

What follows is mostly me venting my frustration about having to use Objective-C. I had to say it somewhere… It is not the only thing I took away from the tech talk, but it was a tech talk after all, so you can guess about the main topics. I had a nice idea for a possible iPhone app while dozing in the lecture, and I also met some nice people, so going there was not all in vain. Oh, and I got a T-Shirt, too.

Objective-C, the strange beast

My main gripe, however, is the programming language. Most people I talked to say that it is not so bad, but my programmer instincts make me shy away from Objective C for several reasons. Granted, most of them probably sound like nitpicking and my objections might make me seem petty. But I have become a programmer out of laziness, and so I absolutely can’t stand it if a programming language is making me do stuff that isn’t necessary.

Header files (Shudder!!!)

Objective-C seems to be a strange beast: on the one hand it apparently is “fully dynamic” (Apple speech), meaning among other things that methods are not statically linked at compile time. On the other hand it borrows from C and C++, with ugly pointers cluttering the code, but much, much worse, forcing you to write header files for your classes.

I am not a language designer, but for the life of me, I can not get these two aspects combined in my head (dynamic linking and header files) - either one feature seems to make the other one pointless. Dynamic means you can modify classes at runtime, so what is the point of the header files?

I have programmed in languages without header files for 10 years now, so I can confidently say that there is no excuse for header files. I think they only exists because of the laziness of the developer of the compiler. But then again, those guys had several years to improve their compiler. What is up with that?

For the non-programmers: a header file basically means that I have to program every object and method in my program twice. Once to tell the compiler that it exists, and once to actually implement it.

It is certainly not difficult, but just as certainly it is not fun. For someone with my condition it becomes very difficult to do because I generally have a very hard time doing things that I see no point in doing.

No garbage collection

Another gripe is that Objective-C for the iPhone does not have garbage collection, so the developer has to take care of erasing objects by himself. Curiously, many people I talked to seemed to agree that this makes sense for a mobile device, because resources are so limited. Well, it seems the recommended maximum memory consumption for an iPhone app is 25MB. I have developed games for mobile phones in Java that had only 800KB available as runtime memory, with garbage collection. No problem whatsoever. A slightly more plausible explanation: garbage collection usually runs in a background thread, and having that thread constantly running might consume more energy. But honestly, I don’t believe it, that is just a weak excuse.

Also, you don’t even manage memory directly in Objective-C, but you have to manually take care of the reference counters. This makes even less sense to me, because I don’t think that is what makes garbage collection difficult. Rather, I would expect counting the references to be compiled into the executable. There might even be garbage collection going on in Objective-C, something still has to free the memory when the reference count has reached zero, after all. Again, this just reeks of laziness on behalf of the developers of the compiler.

Maybe inserting the reference counting into the executable would inflate the memory footprint marginally, but honestly, these days the size of the code is never the problem. Most memory is consumed by the data, for instance images that are being loaded by the application.

Hungarian Notation (Shudder!!!)

One more unbearable thing I have seen in code snippets from Apple: it seems it is customary in Objective-C to use the useless kind of hungarian notation. That means it is customary to call a widget UIWidget instead of Widget, because it belongs to the UI. Joel On Software has the ultimate essay on hungarian notation and how it should be done, mandatory reading for every programmer in my opinion.

Again, this might sound like a non-issue, but it makes me feel almost like the heroine of William Gibson’s “Pattern Recognition” upon seeing the Michelin Man: it is almost as if I am psychologically allergic to this ugliness and extremely bad taste. It sounds innocent if you see just one line, but imagine thousands of lines of code littered with hungarian notation. It is unreadable, unless you train your brain to just not notice it. But why should I have to do this to my brain?

More ugliness

I have mentioned the pointers, something I also haven’t seen in years. Going back to using pointers makes me feel like coding in the stoneage, and they also look ugly. In the same category as the header files fall the interfaces (forgot their real name, but they work exactly like the interfaces in Java). I see no need for them in a dynamic language, so please don’t make me use them. At least possibly one really can get away with not using them, I don’t know for sure.

Hope in the form of alternative programming languages?

Which brings me back to my original gripes with Apple. Is there hope of relief in the form of alternative programming languages coming to the iPhone eventually? Apple certainly hasn’t leaked any plans, and worse, they officially outlaw interpreters of programming languages. The reason is clear: with an interpreter of another programming language (for example a Java virtual machine), people could circumvent the Apple AppStore and get applications from other sources.

This alone does not prevent other languages, though, at least I don’t think it does. I think it would still be legal to use an interpreter just for one’s own application, without exposing it to other applications. Or one could use another language that compiles to Objective-C. One such language seems to be Objective-J. Still, I think the rule against interpreted languages at least slowed development efforts for alternative programming languages for the iPhone.

There are rumors that there will be an adapted (=restricted) version of Flash eventually, but it is not yet clear if it will be possible to write iPhone applications with it, or if it will just enable web sites.

I have found a Lua bridge to Objective-C, but it doesn’t sound as if the iPhone is supported so far.

Personally I still have some hopes for Javascript. There already is a Javascript interpreter in the iPhone, coming with Safari, that can also be instantiated from within an iPhone application. I don’t know yet how much one can interface with the usual iPhone features from Javascript, and if it is possible to run Javascript without actually displaying the WebView (Safari/WebKit). Most people I talk to about this are of the opinion that one should write iPhone Apps in Objective-C to get to use all the fancy features, but I am not fully convinced yet. I hope at least for some apps on can get away with Javascript (obviously not if you are writing a 3d game), so it might be sufficient to get one’s feet wet in iPhone development. Even just to be able to write some parts of the application in JavaScript would be a relief.

Meanwhile, I keep hopes for finding alternative languages for iPhone development. Please let me know if you find any. I probably won’t use Objective-J, though, because it seems too proprietary for my taste. If I learn a new programming language, I want it to be as universally useful as possible.

Ultimately it is the end product that matters, of course. I have programmed in the Linden Scripting Language for Second Life before, which is the crappiest language I have ever seen. Nevertheless it was fun, because the things you could achieve with it were so much fun. Probably it will be the same with iPhone development. Once I really get started and get to see results on the phone, Objective-C won’t feel so painful anymore. Still, I wish there were other options. Options makes me remember: I have also heard people say that XCode is not all that great either, and apparently it is not so easy to use alternatives. Too bad.

by Björn at November 11, 2008 09:51 AM

David's Computer Stuff Journal

"Enterprise Ruby" Developer Looking for Mac Access

http://groups.google.com/group/emm-ruby/browse_thread/thread/f34bc994d7a83522

That said, I still don't have stable access to a Mac. Does anybody have a 64-bit OS X server and can provide me with SSH access? Preferably something that I can have access to for a long time, so that I don't have to keep asking for OS X access. :)

He's in .nl if it makes any difference. I'm not that wild about "passenger" by itself (mod_fcgid does ok for what I need), but the "enterprise ruby" project, which is basically a reworking of how Ruby's garbage collection functions, is a useful and timely idea, given how much of a memory hog rails is.

by David N. Welton at November 11, 2008 09:29 AM

November 10, 2008

Ryan A. Graves

Corporations or startups: This is what the work force will require of you.

0216Image by Cia de Foto via FlickrWhen I worked at my consulting job in Chicago about 2 years ago I had a conversation with my boss about how Gen Y will affect the workforce and how our attitudes towards career will affect growing businesses. I’ve had my opinion about it for quite sometime but it is tough for a successful business owner to hear from a 20 something that they need to change their hiring strategy. The right thing to do is to ask “us” how we feel about certain issues, but the hard thing to do is listen.

Fred Wilson of Union Square Ventures was interviewed for BigThink a few months back and recently posted the interview on his blog. A topic that came up in the middle of the interview stuck out to me because Fred shared the exact advice I gave to that boss a couple years back.

Fred said:

“This generation is going to be a different kind of workforce than the ones businesses have known in the past.”
“This generation will be a lot less loyal. They will be interested in maximizing the value of their career vs. the value of stock of the company they work for, unless they own or control that stock.”

“This is a mercenary workforce.”

“This transition is already happening in tech industry. Software engineers are being poached similar to the way a film star would be offered a better contract to work for someone new.”

“That mindset about talent is what this generation is all about. They are going to be building their own personal brand, own personal career, and portfolio of what they can do, then they will put themselves out to the market to the highest bidder.”

If you aren’t in the Gen Y category you’re probably thinking, “Those spoiled brats with their entitlement issues!”, and you may be right… However, whether we are right or wrong in our thinking this is definitely the sentiment among us. The reason this is so important is because YOU HAVE TO ADAPT! It is absolutely critical for any company whether you are GE, Google, TechCrunch, or startup XYZ to know where the workforce is going and what your employees will want from you. Without them you will not have a business so the fact is, they are more important than even your customers.

Reblog this post [with Zemanta]

by Ryan Graves at November 10, 2008 07:43 PM

David's Computer Stuff Journal

Generating Rails Fixtures From Large Datasets

I've been working with Tomaso Minelli doing some Rails work, and one thing we needed to do was set up some tests. The situation we are in is that we already have a large set of data to work with in our development environment, but getting that data into .yml files is no easy task. Since we have a fairly large number of interdependent tables, dumping one of them alone is pretty useless, unless you manage to get the other tables it links to, and so on and so forth. Dumping all the data would make testing quite slow, and really is too much to be useful. Here's the rough solution we arrived at:


@fixtures = {}
@seen = {}

# Do something with a fixture.  In this case, we store it for later.
def handle_fixture(record)
  @fixtures[record.class.table_name] ||= []
  @fixtures[record.class.table_name] << record
end

# Get some sort of unique way of identifiying a record - class name and id.
def unique_record(record)
  return record.class.to_s + " " + record.id.to_s
end

# Grab all the relations of a class and add them to the queue.
def add_fixture(record)
  ur = unique_record(record)
  if @seen[ur]
    puts "LOOP!"
    return
  end
  @seen[ur] = true

  puts "Fixture for #{record.class.name} - ID #{record.id}"
  handle_fixture(record)
  record.class.reflections.each do |k, r|
    begin
      if r.macro == :has_many ||
          r.macro == :has_and_belongs_to_many
        related = record.send(r.name).send('find', :all, :limit => STARTING_LIMIT)
      else
        related = record.send(r.name)
      end
      related = [related] unless related.is_a?(Array)
      related.each do |related_record|
        if related_record
          puts "    New Record #{related_record.class.name} #{related_record.id}"
          @todo << related_record
        end
      end
    rescue => e
      puts "    ERROR: #{e}:\n#{e.backtrace.inspect}"
    end
  end
end

@todo = []

namespace :db do
  namespace :fixtures do
    desc 'Create YAML test fixtures starting from a single model using reflections'
    task :modelbase => :environment do
      STARTING_CLASS = Foobar
      STARTING_FIND  = :all
      STARTING_LIMIT = 1

      tmp = 0
      totale = STARTING_CLASS.find(STARTING_FIND, :limit => STARTING_LIMIT).size
      STARTING_CLASS.find(STARTING_FIND, :limit => STARTING_LIMIT).each do |m|
        tmp += 1
        puts "#{tmp} su #{totale}: #{m.id}"
        @todo << m
      end

      while true
        if @todo.length == 0
          break
        end
        add_fixture(@todo.pop)
      end

      puts "\n\n#{'='*80}\nScan Finished\n#{'='*80}\n\n"

      @fixtures.each do |name, fixture|
        if fixture.size > 0
          i = "000"
          filename = "#{RAILS_ROOT}/test/fixtures/#{name}.yml"
          puts "Create #{filename} for class #{fixture.class.name}"
          FileUtils.mkdir(File.dirname(filename)) unless Dir[File.dirname(filename)].size > 0
          File.open("#{RAILS_ROOT}/test/fixtures/#{name}.yml", 'w') do |file|
            file.write fixture.inject({}) { |hash, record|
              hash["#{record.class.table_name}_#{i.succ!}"] = record.attributes
              hash
            }.to_yaml
          end
        else
          puts "Fixture for #{name} is EMPTY"
        end
      end
    end
  end
end

It's written in a somewhat quick and dirty way, but it gets the job done. What it does:

It takes a single class - hopefully a well connected one - fetches a few of them, and goes from there, exploring all the other objects that the initial ones are connected to, and then dumping them in .yml files in the fixtures/ directory. It could certainly use more work:

  • Additional starter classes, for ones that aren't connected to others.
  • Intelligent examination of data and data sets...
  • For example you could check to see what classes aren't connected to the others and use them as starter classes.
  • If you wanted to waste a lot of cycles, you could also try and aim for a representative set of examples. For an object that has_many something elses, you could try and find one with zero, one with one, and one with a lot, to cover various cases. That could quickly get out of hand for largish data sets though.
  • I'm sure there are various other tweaks, knobs, and levers that could be added to work more efficiently. I'd love to see them!

by David N. Welton at November 10, 2008 05:27 PM

On Eggs and Baskets

This is a worrying story:

http://blog.mibbit.com/?p=8

He did get his account reinstated, but being similarly quite dependent on Google for various services, this story was something of a wake up call for me. It's tough - they do offer a lot of attractive things for free, but single points of failure are bad, and even worse when they have a less than stellar support infrastructure to help you through the rough spots.

by David N. Welton at November 10, 2008 05:27 PM

November 07, 2008

Ryan A. Graves

BumpTop gets physical: Your desktop is now a desktop

bumptop2Today I watched a short TED video of an incredible software demonstration from Anand Agarawala, the co-creator of a new desktop interface called BumpTop. He goes on to explain his dissatisfaction with the standard point and click desktop interface that “windows” has instilled into our expectations. “You can sex it up, with a Mac” Anand says, but still its relatively boring.  This new interface does a damn good job at replicated a physical desktop is very impressive. It seems, from the demo that they thought of everything…

In the image below which is a BumpTop desktop, you can see that you can stack, group, spread, tilt, stretch, bundle, heap, mound, pack, or sheaf any of the documents, apps, icons, images, notes, or files. The ability that this software has to integrate the physical reactions that would occur on a real desktop are phenomenal.

bumptop1

Then if you watch the demo (which I would highly recommend) you’ll see that you have the ability to throw, grab, tumble, push, barrage, sort, pull, crumble, or discard any of the documents, apps, icons, images, notes, or files.

Now, why could this new interface be huge huge huge vs. just pretty cool? The combination of multi-touch computing with an interface like this could completely take away the need for a mouse! Imagine if I could just place three fingers or all five on a multi-touch surface and organize my desktop? Nothing will ever completely replicate reality but the combination of a slick interface like BumpTop and slick tech like multi-touch, amazing things could happen!

If you develop this I want 1%  :)

Update: Here is the link to download the beta of a test BumpTop I’m not sure if this is actually BumpTop software or not!

http://www.download.com/Real-Desktop-Light/3000-2340_4-10691227.html

by Ryan Graves at November 07, 2008 10:02 PM

Kevin Elliot's Blog

Goals Define Your Future Success

You can’t achieve great things without setting goals.

In order to accomplish great things, you need a roadmap for how to get there. To create a roadmap, you need to set goals first, so you know where you are headed. If you were building a railroad, you would research and determine what your goals were (destinations), and then build the tracks to connect them; you wouldn’t build tracks in all sorts of funky directions as you went along.

Contrary to what you might have heard, as an entrepreneur, when you sit down to set goals, you need to set them high. For people not looking to be in business for themselves, setting goals just out of reach are OK. But you’re an entrepreneur, so you need to think bigger. Generally, your maximum potential is what you set your goals to. Thus, if you set a goal to make a $100,000 salary and you’ve executed on your roadmap to get there, chances are you’ll come close and make $90,000/year. You might even hit your goal, or just above it. You will probably not have a chance at making $500k/year because that requires a different roadmap… a roadmap you haven’t discovered because you set your sights at the $100,000 salary. You need to set your goals high, even if they seem unrealistic to others. When combined with ideas and a purpose, goals that high become dreams.

One of the things that makes you unique as an entrepreneur is that you’re a dreamer. It seems like everyone thinks you dream too much and have ethereal ideals. Employees don’t dream; sure, they dream in their sleep, and perhaps they have an imagination, but real employees tend to look to others to set their dreams and ambitions for them. Entrepreneurs live and breathe dreams. It’s in their DNA. They work to persevere by making them a reality, even when everything is going against them.

If you don’t dream that you are going to build a $50 million dollar enterprise that revolutionizes the way people power their vehicles, then the chances of you ever making it happen are slim.

How To Set Goals

You may already know how to set goals perfectly. If that’s the case, drop into the comments section of this post (contest is at the bottom), and show your expertise by sharing some tips with the rest of our readers. Otherwise, don’t worry, here is how you get started. There are many ways you can set and track your goals, but here is what I recommend:

  1. Create a list of things you want to accomplish. Begin by creating a list, in no particular order and in free form, of all the things you would one day like to accomplish with your business. While you’re at it, do this for your personal life as well, because believe it or not, your personal and business goals have a lot in common and will influence each other over time. Spend at least 1 hour thinking and writing down your goals. Doing this on paper is probably the easiest effort, because you can do it anywhere. Some people find sitting in a spacious park with a notepad to be a really effective way of purging the distractions.
  2. Categorize your goals. Beyond “Business” and “Personal”, you want to categorize your goals that are in common. If you wrote down goals like “Start a business”, “Hire a lawyer”, and “Hire 2 employees”, then you might consider categorizing them as “Company Formation.” Other goals might be “Visit Eastern Europe”, “Live in Paris”, and “Skydive in Cairnes, Australia” and mark those as category “Travel.” This step just helps you build context around your goals. Later, when you want to discover new goals, you can pull out the goal list for a particular category so you can have some focus to further refine it. Spend 15 to 30 minutes categorizing your goals, and don’t let this step frustrate you.
  3. Map your goals to a timeline. For each categorized goal list, you want to start thinking about when you expect to complete the goal. For example, the previously mentioned goal “Hire a lawyer” would most likely be a Short Term goal. A goal of “Bring in revenues of $1 million” might possibly be a long term goal for you. Ideal timelines would be: this week, this month, this year, 3 years, 5 years, and 10 years. The more frequently you revisit these goal timelines and your goal lists in general, the higher probability that you’ll actually complete them. For some, this step may take hours as they try to visualize when in their lives they think the goal is realistic. Other people might actually do this instinctively.
  4. Break down your mega-goals into smaller goals. If you have made incredibly lofty goals, that’s OK. But you need to break them down into more digestible and time-sensitive goals too. A goal of “Grow my business into a multi-national organization with 450 franchises and a gross revenue of $500 million” is most definitely not accomplishable with only a set of tasks as a roadmap. You need to chop it into sub-goals, such as “Grow revenue to $10 million”, “Develop a franchise business plan”, “Setup 5 franchises”, “Establish opportunity in franchise conferences”, and “Build presence in Mexico.” How you keep track of your goals and sub-goals is up to you, but a manilla folder for each category and sheets for each major goal seems appropriate for most people. Others use elaborate Excel spreadsheets, or other custom software.
  5. Break your goals into tasks. Now that you’ve set your eyes on what you want for your personal and business lives, it’s time to create a roadmap to get there. I find it amazing that a lot of people have trouble with this part of achieving their goals. You need to spend many hours, and possibly days on this step, although thankfully, you can do this one goal at a time. What are the tasks necessary to accomplish your goal? If your goal is “Start a business” some of your tasks might be “Research types of businesses”, “Purchase books about starting a company”, “Talk to other business owners”, “Do some preliminary market research”, or “Hire a formation lawyer.” If you have trouble coming up with the tasks you need to do for the roadmap of your goal, phrase your goal as a question (”How do I start a business?”) and ask your network for help.
  6. Each morning, create a Today List. That’s right, you should be starting every day by sitting down and reviewing what you think you need to do, and then create a list to get those tasks done. There certainly will be interruptions and derailments, but that’s fine, because you can always get back on track. If you’re not starting your day with a clear understanding of what you’re attempting to do, how could you possibly get them done properly? This may be obvious to most, but you would really be shocked at how many people just “wing it.”
  7. Resolve your day with some cleanup and reflection. The last thing you may feel like you want to do at the end of a stressful day is sit down and check things off, but you need to do it! Not only is it absolutely rewarding to see all the work you’ve completed, but it’s a way to identify what you need to finish tomorrow. You can also think back and examine if your tasks were on track for reaching your goals. Did you feel like they helped you get closer? Can you clean up your task lists at all to refine your roadmap?
  8. Revisit all of your timeline goal lists on a regular basis. Over time you are going to change. Your desires will change, and you will refine your ability to track your goals. You should be revisiting your weekly goals every day, your monthly goals every week, and your yearly goals every month. It won’t hurt to post your goals on the wall on occasion to remind yourself what you’re working towards too. For some, this might be too aggressive and overkill. But, for the rest of us, this is exactly what we need to stay on track.

Additional Reading

Contribute and Win

If you have a technique or resource that I’ve overlooked, please leave a comment! I will be choosing a comment at random (on Sunday, November 16th) to receive a copy of Seth Godin’s new book, Tribes: We Need You to Lead Us.

by kevin at November 07, 2008 05:20 AM

November 06, 2008

Gabriel Weinberg's Blog

Compete.com #s are Way Off on Low Traffic

Like many entrepreneurs, I check the compete.com #s for my Web sites.  I've found that they are way off for relatively low traffic sites.  Take my recently launched startup, Duck Duck Go.

The compete stats for Duck Duck Go show about 14K unique visitors in Sep. and then 3.1K in Oct.  In reality (according to awstats), the real #s were 8.3K in Sep. and then 6.2K in Oct.

To most people in the know about this stuff, I suppose this isn't a big shocker.  Me included.  However, I haven't looked at this in a while, and I was still somewhat surprised how far off it was.

Granted, it must be difficult to extrapolate on the low end.  And this case may be even more difficult.  I launched Duck Duck Go on Sep. 25 on Hacker News, and that site and Reddit generated most of the traffic in Sep. over those last few days.  

So maybe that audience has more compete toolbars installed than then the Oct. cohort or something.  I don't know.  But I do know it is way off.  It will be interesting to see if it gets better at higher traffic.  Of course to test that theory, I'd have to get some higher traffic!

I guess I am annoyed about it because I think people evaluating your company do look at these things. I know I do. For instance, it's right there front and center on our crunchbase page.  And the immediate effect I think people get from looking at that is that we kind of suck.  But if the #s were accurate, perhaps they wouldn't get that immediate first impression.

by Gabriel Weinberg at November 06, 2008 10:56 PM

Ryan A. Graves

Business guy or techy guy? What do you know about startups?

Dharmesh Shah is a self proclaimed coder and introvert who doesn’t like being around people. He stays up into the early hours of the morning, almost every morning, developing software. He went to MIT and sold his first startup for CASH. You may think total techy right? Well, Dharmesh also writes the very popular startup blog OnStartups.com that got over 50k unique readers last month. Thus, he obviously knows a thing or two about the business side of startups.

This begs the questions, is it better to be a business guy or techy guy? What do you need to know about startups to be successful building one? Surely not everything?

Dharmesh spoke at the Business of Software conference and its is worth watching. Also, let me know what you think is more important to the success of a startup…business acumen or strong technical skill?

Dharmesh’s summary. I made the points that I enjoyed most bold.

1.  Your idea can suck.  Just get started.

2.  You can be in the middle of nowhere and still build a great business.

3.  Not having cash breeds good behavior.  It’s helpful to have constratints.

4.  In defense of the modest outcome:  You don’t HAVE to build the next Facebook.  Modest liquidity events are highly under-rated.

5.  “I’m a complete introvert.  It’s not that I don’t like people, I just don’t like beind around them a whole lot.”

6.  Something’ changed here.  You don’t have to spend a lot of money to get your message out there.

7.  The real issue with VC is not the cost of capital (which is high), but how hard it is to actually raise it.

8.  You have to go through the 12 flaming hoops of venture capital.

9.  All the time you should’ve been spending solving your customer’s problem, you use to start to solve the VC’s problem.

10.  Write a blog, not a business plan.

Reblog this post [with Zemanta]

by Ryan Graves at November 06, 2008 06:17 AM

November 05, 2008

Ryan A. Graves

ActionsTalk in the Milwaukee Journal Sentinel

In the Milwaukee Journal Sentinal

You all know that I’m all about celebrating small victories. It provides the drive to keep after it and onto the next one. Today Blake and I are celebrating a large victory! ActionsTalk (the original name of this blog), what started out as a fun project to meet entrepreneurs, has now morphed into a full fledged hub of “startup spotlights”! This week The Milwaukee Journal Sentinel ran a story on how ActionsTalk is bringing attention to a growing startup ecosystem here in Milwaukee. Originally ActionsTalk was headed to be a conference to bring together the entrepreneurs, the techies, and the VC’s, and now it is a weekly video to highlight those startups. As there are more and more startups coming from other cities than the hubs of Silicon Valley and NYC, ActionsTalk hopes to increase the awareness of the potential that comes from those cities. Thanks to all of you for your help and support in growing ActionsTalk and spotlighting startups!!!

Also, we want to thank Tannette Johnson-Elie for giving us such a phenomenal experience and speaking so highly of us in the article. We really are having a blast with ActionsTalk and surprisingly having a large effect on a growing creative culture here in Milwaukee!

In the Milwaukee Journal Sentinal 2

by Ryan Graves at November 05, 2008 02:10 PM

November 04, 2008

Ryan A. Graves

Isn’t it exciting to go and vote!

Last night I had dinner with my 87 year old friend Mr. Tim Herrington, some of you see me talk about Mr. Herrington on Twitter from time to time as he shares his experiences with me. When I started talking to him about the election he didn’t get into his views left or right, he just said, “Isn’t it exciting to go and vote? This is why the rest of the world envies us. Mr. Herrington is exactly right. We are SO lucky to have the opportunity to choose the person we want to lead our country over the next term.

I promise I will not talk politics on this blog again until one post 4 years from now. But for today I must share this. My belief is that the strength of this nations political system comes from the powerful ebb and flow of the two political parties. The end.

For that reason, I will be supporting Barack Obama. Instead of trying to come up with an elegant report of why I’m supporting Senator Obama I’ve decided to share with the the 4 arguments that have had the most impact on my decision. (in no particular order)

COLIN POWELL SUPPORTS OBAMA

This monologue from Colin Powell (must watch if you haven’t) was the nail in the coffin for me. His eloquent and intellectually presented argument combined with his perspective made me feel very confident that I was making the right decision.

WARREN BUFFET SUPPORTS OBAMA

In an era like maybe only one before I think we need to turn to our brightest “and most trusted” economic minds and find a way out. I want a man that will look out for the country and not himself. I believe Buffet wants that too and again with his perspective I must take his choice to heart.

The Conservative Christian Case for Supporting Obama

“Last week I received an email from Dr. James Dobson – whose internet ministry I subscribe to – imploring me to “vote my values,” meaning to vote for the candidate whose “pro-life” and pro traditional marriage rhetoric carried Dr. Dobson’s stamp of approval. My immediate thought was: Why should I vote two of my values to the exclusion of all others? In that question lies the problem of the Christian allegiance to the Republican Party.”

CHANGE I’D LIKE TO SEE - Fred Wilson

I can attribute Fred for first challenging my original intent to support McCain. Through this post he made me realize that I need to become better educated on the issues at hand and how the candidate will act towards those issues instead of only focusing on just the individuals. Thank you very much Fred.

My intent of this post is absolutely not to sell you on my vote. If there is any agenda here it is to get you to go out and vote and exercise your most honored freedom as an American. Also, I wanted to explain my decision and support it with the best arguments I’ve seen made over the past 3+ months. I will be relatively selective with my response to comments on this post.

by Ryan Graves at November 04, 2008 12:01 PM

Real Time Matrix Social Summit

RTM logo

In an effort to support the conferences and web events that are embracing live-streaming in their event I wanted to help spread the word about the upcoming Real Time Matrix Social Summit. The event will be held at the Claremont Resort and Spa in Berkley, CA.

The event looks to have a solid line-up of guests in TechCrunch’s Mike Arrington, Founder of Netvibes Freddy Mini, and Jeremiah Shackelford, Startup Facilitator with Sun Startup Essentials, among many others.

I want to help promote this event for a friend Violet Lim, and also to really show my support and try and highlight the importance to the overall startup ecosystem in live-streaming these types of “thought leader” events. Being able to consume the same cutting edge startup info that the people in the valley are from Milwaukee or any other growing startup environment is huge for the overall community. The next step will be to open up interaction to those not on-site…(startup idea*).

by Ryan Graves at November 04, 2008 05:02 AM

November 02, 2008

Kevin Elliot's Blog

Seize Today… Tomorrow Is Never Good Enough!

Treat today like it is your last. Reach out and meet people in your industry. Finish that project you’ve been procrastinating on. Stop making excuses for why you’re not ready to be successful. Take risks and chances that you’ve avoided taking out of fear.

Occasionally when I’m writing, I find that some of the topics that I investigate may sound cliche or generically common. I end up rationalizing my intent to write about it when I realize that even though it may be truly obvious or common sense, I witness too many people not applying the knowledge in their lives. In some cases, they are simply forgetting how valuable it might be and just need a nudge. Sometimes, we forget some of the most basic, but important, life lessons that can give us guidance for true success. Cliches are great ways to remind us of some important knowledge gained from our collective history. One of my favorite cliches is: “There’s no time like the present.” It reminds me that now is the best time, and it doesn’t attach any predefined reasoning of why it’s so. It gives me an opportunity to explore, in my own mind, why us