RSS Feed

Posts Tagged ‘startup’

  1. Efficiently Inefficient: Processes that can improve quality and quantity of life

    September 5, 2012 by sshadmand

    rube

    For our latest project at Socialize Isaac and I are going to increase the release cycle even further and go from a few releases per group per week, to a few releases per day. I find moving more efficiently and quickly over the years always takes a few non-intuitive jarring mental steps. (If they didn’t we would have been way more efficient as a society way earlier on in history).

    Here are a couple things that always seem to be the foundation of inching your way up the efficiency hill.

    1) Get to a point at which you truly trust your results, not just feel good or secure about them, but quantitative based results that have a quantitative ”I trust this” number. This is what I call the “don’t look over your shoulder moment”, because if you’re looking over your shoulder to make sure nothing has gone wrong, you are not looking forward to make sure new things go right. This accomplished with unit/itests tests, or in our everyday lives marking your calendar or adding a reminder. Even at managing people in the office, time and time again setting up employees to be trusted and autonomous, with a simple audit system to make you aware only if something is wrong, has proven time and time again to produce happier, more creative, more productive employees in a company that can scale. Basically every one wins big when you make sure you create process that handles things that are set to let you know if you need to take action, and quite %100 otherwise.

    2) Really reconsider what you’re are willing to bare in mistakes. This is usually a major brain switch moment. Sometimes people can work 100x more efficiently and productively if they just allow themselves to be wrong for a totally fixable 1 minute per year. Yes your server may go down once a year, but instead of working hard to make sure that never happens (which is impossible), work hard to make sure systems are in place to recover super quickly. The funny thing is when you accomplish #1 above, mixed with this #2 item, you start performing better than you could have imagined.

    3) Remove process that is there to support the more intuitive faux “warm and fuzzy” feelings that keep 1 and 2 from happening.

    4) Always push yourself, and those around you, to test process that offer efficiency gains even if you don’t feel comfortable at first. Comfort is often the foundation of slowness, and trying new things even against your “better judgement” are the only ways to break free.

     

    For you nerds out there, here is the article from github Isaac passed on to me that sparked our latest evolution in product releases. Although this post and its sentiment are, in my book, universal throughout life and business and not code.

    http://scottchacon.com/2011/08/31/github-flow.html


  2. What does coke, the bible, and good business gut all have in common?

    June 19, 2012 by sshadmand

    gut

    On the car ride up from a meeting on sand hill, Daniel Odio interviews me in “the hot seat” on how process plays a pivotal role in your startup’s business success.


  3. Use Case: Searching for PMF

    February 23, 2012 by sshadmand

    iStock_000011940288XSmall-300x300

    Scan.me is great use case for focusing on the right customer, not just the right product.

    AND that the product doesn’t *have to* be complicated or new to be wanted.

    It just has to be easier to use, and packaged up better then the alternative.

    http://techcrunch.com/2012/02/23/scan-gets-1-7m-from-google-ventures-and-shervin-pishevar-to-make-qr-codes-actually-useful/

     


  4. Leave the caves and create your tools!

    July 30, 2011 by sshadmand

    GAE offers a free to get started approach, along with an instant “hello word” initial environment, making sandboxing ideas and building helpful tools for productivuty a snap.

    To get started, download GAE, press the plus sign in the bottom left corner. Set the directory you would like to work out of and your almost done. Well, at least you are already at the stage you need to be to start playing with the system locally, in what we call the development environment (No one can see your system but you.) Just hit the [play] button on the GAE dashboard and you are running with your first environment. Just click the Browser (the compass looking thing), or go to http://localhost:8080 in your browser, and you should see your first “hello word! It is quite reassuring to see it work so smoothly (if indeed it does), and if this is the first time you have coded, trust me they have taken out a hell of allot of pain out of the tedium it can take to get here.

    Without getting into the nitty gritty of code just yet, let’s push your baby to production (That means make it live/accessible to the world). That’s right, you are about to push a web application live to production!  First create a new app at the google app engine home page and follow the steps there (setting up your yaml for upload). Your yaml file tells google which app your are updating when you do so. Not making sure your yaml matches your project is like  you sending mail through the USPS without out a “from”/”to” address.

    Once complete, press the blue arrow pointing upward (the “deploy” button) and it will deploy (AKA: push to prod, go live.)

    Once deployed, you can update, monitor, or even share you application with the world. And all for free. Not that this baby would get allot of attention in its current state (just a “hello world”), but if it did, it would also be scalable. I mean 10 years ago this would have cost you quite a bit of time money, especially if you didnt know allot about server configurations, apache, linux, or windows server, or…well you get the idea.

    There are a few sample apps you can play with on the GAE site. If you are ready, start developing some code i Python. Maybe had a hellow world message of your own.

    When you start feeling saucy, try and create a model. A model is a data structure you can save, or persist, data to your system. Again to you newbies out there, this is the equivelent of your granfather telling you, “back in my day I had to walk up a hill in the snow to get to work, and up a hill in a blizzard to get back.” Setting up a database on a production server was a skill on its own, but to create one that is scalable, and without the need to architect it is amazing. You see, based on the models you create GAE intuitivley creates your “database”, stores it efficiently, and assumes where indexes need to be placed. You really don’t have to understand any of this, but if you want to you can look up those terms have at it: indexing, database, architecture, MVC…. Like I said, I’m just an old guy complaining about hills.

    If you are still a bit timid about getting started, don’t worry there is a baby step in between these tween sized steps that can help you get ramped up before you start churning out lines and lines of code. Click on the “SDK Console” button on the GAE dashboard. It will open up a web page that is running locally, on your stage environment, that gives you windows into your system to hack around with. (This console lives inside your development app, so don’t forget to run your new app to get access to it.) Once in the console, click “Interactive Console”. There you will have a very rudimentary terminal that you can write temporary test scripts in. The output is shown on the right of the screen. This is a great place to get errors, make mistakes, and go nuts! (Note: The SDK Console also houses your development DB, so you can check to see what data you are saving after you have attempted to save it.)

    Note: The easiest way to get started as a newbie, in my mind, is by using Python in GAE. Java, although awesome, is a bit more advanced.

    I recently used GAE to create a few projects to help out the team. One for TeamCity monitor to view coverage reports and if a build is broken or not. And also one for Pivatol Tracker to help our press and marketing interpret what is coming out of the product pipeline, if its ready, and what are the stories of value within. I will post templates for those projects in the near future.


  5. Politifact

    August 9, 2009 by sshadmand

    Politifact

    Politifact

    I heard about this site while listening to an interview on NPR. In this interview the host asked thier guest some questions as to why “they are so angry” at thier local senator. The guest replied that he is a liar and signed bills to allow a rediculous measure in an unwanted bill. She was irate at the situation, what was interesting is how the host then turned to a guest from Pilitifact who seemed to have researched the case and found taht many of the angry protesters points were driven by rumors as the references to documents they made were unsubstantiated. Now I am perfectly aware that Politifact is yet another level of abstraction from the “real truth” just like any other news agency.  What is interesting to me, after I browsed around thier site is the fact that they give you thier opinion and consolidate every reference and statement into linkable sources on the right hand gutter of the web page. It’s like having your own senate secratary gathering the facts for you so you can make your own informed descisions on a topic.

    Fact-o-meter Ex.

    Pants on Fire

    They give a summary of statment or claims made by our politicatns and then exmine their refernces and sources and rate how true the statememnt is on a “truth -o-meter”.  Their meter varies from basic true or fals all the way down to “Pants on Fire” for those claims made that are not only exagerated but baseless.

    Pulitzer

    Pulitzer

    They also show you links to all the references and sources they reveiwed so you can digg into the claims yourself and form your own opinion. The site definitely fills a need and will ecome popular enough so that our politicians are more careful when trying to exagerate claims just to gain the viewers attention. ALso a nice reference for Politifact is thier wininnging of the 2008 pulitzer for national reporting after only being luanched in 2007.


  6. Balsamiq, an interesting taste of things

    July 27, 2009 by sshadmand

    Balsamiq.com

    Balsamiq.com

    Balsamiq.com is a web application (that also comes in a downloadable software version) that allows users to quickly create mockups for web sites and iphone products.  I was skeptical at first, but 2 things made me pretty happy with thier approach to this common problem.

    Mockup

    Mockup

    The first was the choice they made to exagerate the concept of fuction over form. Their toolset, or stencils are purposly quasi-poorly hand drawn graphics that have a major lack of attention to detail.  As the owners of Balsamiq.com put it, “it encourages critisism” … “so that people don’t get attached to ‘that pretty color gradient’”. The secod thing I liked after playing around with the app a bit was the way they decided to implement the editing process of these draft like stencils. Most implemetations of design toold have properties panels that allow you to change many aspects of a feature, but not only do those properties get complex but since you are given many properties you try to use them in various combinations and often times doing so has unwanted results i.e. certain border style doesnt work well with large boxes with italic text.

    Edit Mode

    Edit Mode

    At balsamiq.com the stencils are all pre fab and standard, not much is expected of them other then being better then just a place holder. Content is, for the most part, the only thing you can change and they use a simple text edit box when that content needs to be changed. When you double click a stensil the data is presented in a markdow laguage. i.e. buttons that are hard to align and choose width and colors are nothing more then a comma delimited list in edit mode —  (button 1, two, and three). When you click of the text box the buttons are created for you.

    They truly stuck to the motto of just use the bare essentials and KISS paradigms to set the expctations of the designers and reviews while making the process of creating dead simple. Which in the end created a great mockup tool, allowig you to focus on what you shoud be focusing on ayways — workflow and content placements.

    Give it a try @ http://balsamiq.com/demos/mockups/Mockups.html


  7. Give a hoot track your tweets

    July 22, 2009 by sshadmand

    bit.ly

    bit.ly

    There are many apis that offer shortening of urls tinyurl.com, tinyurl.cc, bit.ly and many others which have all been useful over the years as services that take a URL like this:  http://www.seanshadmand.com/2009/07/18/give-a-hoot-track-your-tweets/ and convert it to a url like this: http://tinyurl.com/len47k. Once the tiny url is clicked a user is quickly redirected to the true url of the site.

    HootSuite

    HootSuite

    Now, with the advent of the Facebook status and more recently Twitter tweets, fitting text based information into a very small space is ever more important and shortening URL’s has become big business and an interesting space to be in for startups these days. (check out some techcrunch articles here at http://bit.ly/jytKD and http://ow.ly/hWSV).

    I have recently been turned on to yet another player in the field found at http://ow.ly. This url shortner is provided by a comapny called HootSuite and not only provides shortened urls but aggregates all of your twitter feeds in to one place and allows you to quickly convert all urls within a tweet into shortened ow.ly based urls. The cool thing is those shortened url’s also provide tracking analysis so you can see how many people clicked your link in a line graph inline with all of your posts. Pretty cool, if you twitter at all or can find it usefull to track a urls number of clicks beit through an email or web site give ow.ly or hootsuite a try.

    HootSuite Stats

    HootSuite Stats


  8. Augmented reality: Nearest Subway

    July 18, 2009 by sshadmand


    iPhone App

    iPhone App

    Latest coool app that takes augmented reality and makes it practicle for the everyday user using GPS and the New York City Subway.

    Augmented reality uses your screen to superimpose CGI or digital media as an overlay to a real life realtime backdrop. The first big example of comercial use I know was by GE  who did thier own version of augemnted rality for thier website. On the site GE asked its users to print a pattern out and hold it up to the camera on thier computer. The site would recognize the pattern and place digital graphics, of a wind mill for instance, on top of that pattern but using the computers camera. They also added an audio feature so that when you blew on the microphone the windmills would start turning. Here are some other exampes of augmeted reality on youtube.

    Now the latest augmented reality product is out on iPhone and allows users to not only see the nearest NY metro stops to them but it  overlays a marker in realtime over the video functionailty of the camera so that you can see the marer over the landscape in fornt of you. With teh camer faced town arrows are placed on the ground, through the camera, showing you the direction you need to walk to get to the metro of your choice. Check out more iformation and a video on crunch gear showing off how it works here and learn more about the comapny that produced it called AcrossAir here.


  9. Google Voice: A look around

    July 17, 2009 by sshadmand

    Google Voice

    Google Voice

    Finnaly got the invite tonight from Google Voice, Googles completly free phone forwarding and voice mail service. Google voice is the new version of what was fromerly known as grand central. The servcie lets you choose a phone number and all calls made to that number are forwarded to a number of your choice, be it cell phone, home phone or work. There are a good deal of options and setting that come with this service and overall it seems to be a pretty cool evolution in phone messaging. Phone VM transcription services and magaement systems have been around for years but as usual Google has made this service free now so other small businesses will be hard pressed to beat that bottom line.

    GV Phone App

    GV Phone App

    One great feature is the transcription service for all voice mails. When a user calls and leaves a voicemail message Google takes the voice stream and converts it to text. You can then read the voice mail via email, text message, through the Google Voice portal or through the downloaded phone application for Android or Blackberry. The transcription works well pretty well most of the time, although it’s not perfect just yet. Phone numbers were deciphered 100% accuratly, so far at least, and you can always play the voice mail along with the text if you have any problems with the transcription. Also, on the phone app the text is higlighted as the voicemail is read to you.  If you want multiple numbers going to and from a single number check out vumber.com for multinumber. Note: There is one place that Google Voice charges, international calls.

    Phone App VM Inbox

    Phone App VM Inbox

    As far as anyother charges that one could inccur from the phone network, I called T-Mobile and the representative said that many companies in the VM business have worked payments sytems with phone carriers out to make sure although you aren’t chareged for these services you dont abuse the carriers lines either. Of course rates will vary between plans and carriers so make sure you check your plan for details but in my plan I get 500 forwarding minutes during peak time. If  thise minutes get used up then forwarding gets counted against my regular minutes, once again only during peak hours.  All in all it would take alot of long messsages to go over those limits so I am happy with both sides of the system so far. I will see at the end of this month if what I was told ends up what i see on my bill..

    Also, Daniel tunred me on to some cool settings for GSM phones. You can force your carrier to use a third party VM service so all your calls either through Google Voice or through your own personal exsisting number uses the Google Voice VM service. You can find out how to set that up here (http://go.danielodio.com/voice). Bassically dial *004*1[yourVMservicenumber]# (i.e. *004*15551234#) and all future VM calls will be sent to the VM service phone number provided.

    Below are some screen shots of the dash board and settings provided by the Google Voice service.

    Dashboard inbox diplsay VM messags and their transcriptions. You can send SMS messages and call from your dashboard as well. If you use gmail all your contacts come along with the dashboard so who is calling is not just a phone number but a name and picture could be associated with each entry.

    Home Screen

    Home Screen

    This cool feature below lets you create VM greetings that change depending on who is calling you. Have a professional greeting for unkown and work contact and a fun one for friends.

    Settings 2

    Group Specific Setting

    Send transcriptions to email or via SMS, screen callers or keep calls from ringing your phoen and going straighth to VM with do not disturb option.

    Settings 1

    General Settings

    Google also has a widget that lets you put a contact me area on yor page so people can call yo without having to know your direct number.

    Settings 3

    Call me widget


  10. Quantify my language

    July 2, 2009 by sshadmand

    oDesk Search Results

    oDesk Search Results

    The cost to scale a web application has changed considerably and therefor the way most people decide to plan out thier development strategies has changed as well. Not every web site is an enterprise solution and getting many sites or versions of sites out to the public quickly has become the greatest focus on a fledging comapanys mind.  Because scaling is so cheap and servers are so easy to set up with clouds I often hear, ‘lets deploy first and see what people think and if it gets big we will just through some servers at the problem, and improve the code as we grow.’  For the most part I agree, in the case that a complex problem arises an RPC call to some seperate more efficient code base, server or algorithm can be used.

    Dividing up a site into 3 parts is key, re-inventing the wheel tasks, already built better then we can build it widget/api tasks, lets solve a new problem tasks. For example: login, and register has been developed 100 times over as well as setting up projects and DB connection settings. Getting a users feedback or publishing your content to all the social networks has been done beautifully by many companies that now give it away for almost nothing and are great to use, unless your new great idea has a core innocation in such technolgies. Then there are the problems out there that may be partially solved, but there is still quite a bit of technique and brain power needed to tackle your unique version of the problem to complete your companies mission, like improved search of billions of peices of data or 3 degree+ of sepration colculations. The mission is use what you can that already exists if its not your CORE business to own such IP (often times people think they have 5 core’s….they don’t) and use what you can to get that core going as quickly as possible. This isnt true for all web startup’s — but it is for most.

    oDesk Feedbacks

    oDesk Feedbacks

    I will save more on that topic for a later post. Today I simply wanted to take the problem of getting started up a level or two and look at the first part of development for non developers.  I mean I personally know what I like to develop in, and it’s always good to ask someone with more experience then you what he/she thinks, but I all to often I find people that have inadvertenntly chosen the more expensive, more timley path and in the end they have a mess, a bill, and an almost incomplete site. They are then left with finding a batch of new developers who can jump right in and take over. I see this ALLOT and it breaks my heart. Is it jus a product of bad consulting? Is there a way to help get non developers a leg up and allow them to make good desicions quinatitatilbyl without a consultant telling them biasedly which way they can go to suit there own needs.

    I know that oDesk, and other internet based freelance servcie is where allot of folks turn to so I went out and got some basic datapoint to start this conversation. Below are some charts I put togther using search scripts to get results sets from oDesk (whom I think should put out more repots on this matter to help out the public).  I simply tried to query things people may be wondering and get results sets for each lanuage respectivley. I was suprised to see how flat the results were.

    oDesk Search Results:

    # high rated   feedback (2+ FB & 4+ stars) total   feedbacks (4+ star) most hours (2+ FB & 4+ stars) $/hr of most hours (2+ FB & 4+ stars) avg top 10 hours avg $/hr of avg top 10 most hours avg cheapst top 5 avg most exensive top 5 highest reqested rate
    Python

    3

    6

    606

    $33.00

    146

    $25.34

    $24.67

    $28.10

    $83.00

    Ruby

    12

    9

    2300

    $16.00

    663.5

    $27.50

    $14.93

    $95.51

    $230.00

    PHP

    64

    37

    4045

    $30.00

    1923.7

    $26.44

    $9.33

    $75.62

    $166.00

    Java

    12

    15

    712

    $27.78

    530.3

    $26.13

    $8.45

    $54.09

    $166.00

    .net

    10

    14

    2490

    $19.44

    641.6

    $26.85

    $11.55

    $40.80

    $111.00

    Below is a list of some languages and how many hits came up when the languages marked with an X where combined in the search. I guess what I was going for here is how many people know what combinations of languages. For example people who posted a knowlagdge of all languages was 7, and those that claim to provide services to both python and ruby were 35.

    Java

    Python

    Ruby

    .net

    PHP

    Search       Hits

    x

    1427

    x

    246

    x

    300

    x

    1757

    x

    2397

    Expand to show all results +

    oDesk Results

    oDesk Results

    I will admit I dont like .net and I am not a fan of PHP as much as I used to be and although I enjoyed building FamilyOven.com in Java iterating over quick changes on the fly got really annoying having to compile and recompile my code. The pside of course is its great stability and easy to debug format. It’s just that scripted code suits my needs more these days. I put things together to push out new sites and stabiiy in the first year isnt that hard to do with server costs the way they are these days.  Python and ruby have allot of abstraction but for the first year I probably wont care, second year I will just pull hard tasks out like I explained in the first part of this email.

    The data I gathered made me seriously wonder for a moment, am I just falling into the hype or is python and ruby as smooth, efficient and easy to develop sites quickly as great as it seems? I didnt jump on the ruby, python band wagon quickly. I created a few sites on it before I formed an opnion for sure.  I guess whats more important to notice here is how the hell is a non-technology/development person able is to decide on a languge to go with after talking to vendors and seeing results like these. I mean these data points love .net and php as giving off the impression that they are affordable, and popular.  I feel however that those that I know that use Ruby and Python are more innovative, fast, and love what they do more so then the others, not to mention cheaper in that they get more done more quickly. (or so it seems that way as of late) I would love to get some advice on ways to mine for data that respond with data that can statistically prove my sentiment isn’t just an opinion, a sort of freakenomics style of analysis if possible. I dont want to try to manipulate data to prove my point I just want to see if there are any true data points out there that confirm what my gut tells me.

    Of course being that ruby and python are new compared to the other languages one could expect such unimpresive numbers and stats, I also think that being that they are so new to the common developer tool set it is impresive just how many people code on it already and how many plugins are available. One metric that could be usefull is expense to get started materials wise, free easy to use documentation, number of plugins, and time to start a basic project/site.

    Python for instance is part of the Google standard languages, that speaks highly to me. It is supported by the Google App Engine and it has jython a frameowkr taht allows python to run in java runtime. That is mportant as well as java run time is more efficient then most things out there so you have flexability. Ruby has tons of plugins as well as python. and all scripting languages take almost no time to set up.  Also it is important to pointout that other then biz spark from MS getting a project developed is MS systems are not free to get started on from servers, to dev environments to documentation and support many MS product cost quite a bit which can get in the way of trial and error, innovation, speed to market, and keeping initial expenses down.

    Please comment if you think I should account for a factor I missed or if youhave some data on your own.  If you have some crutial data points please list them and the source you were able to get it from. THe more straight data we get the more we can help people make better descisions rather then just using he told me so approach.

    Here is some data about the job market in 2008. More data on jobs and how they relate to development would be helpful as well. i.e.  http://dotnetslackers.com/Community/blogs/xun/archive/2008/08/18/who-has-respect-in-web-development.aspx