Friday, January 25, 2013

Startup Weekend CLT

I decided to try a new thing on the weekend. I went to Startup Weekend. An event where anyone can pitch an idea and work on for the chance of winning funding and other perks and fun. The event took place in Packard Place in downtown Charlotte. I did not have any ambitions of starting my own business (yet!) but I wanted to get exposed to the process in case I want to. I also wanted to improve my programming skills. The weekend was quite an adventure that I learned a lot from so I am going to talk about what happened and follow up with what I learned.

Day one -  The Pitch:
Everyone with an idea were given a minute to pitch. I decided to go for it as I don't get a chance to practice my public speaking skills every day so I went for it. After an adrenaline rush that lasted for over 30 minutes, I pitched my idea and I did not know how to explain it and it got lost in the sea of pitches. It was really bad.


After voting for the top pitches, We had to join a team that we are interested in working with. It was tricky given that I had no interest in any of the ideas so I chose a team that needed a web developer and had other developers that I could learn from. We did not win and I really don't regret not choosing another team. I came to the event to sharpen my skills and I think I worked on a really challenging product.

Day 2: The head down coding phase:
Now that the plan is set, we divided our team to handle the development, marketing, bushiness planning and research. I decided to handle the web development given that we already had 3 developers in the team who handled the Android app and the back end of the server.. ... I was able to pull a quick web layout thanks to bootstrap and Google maps. I used Google charts for the first time and it was really easy to use.

Day 3: The catching up:
The last day. We did not code freeze and it felt as if we were moving the last pieces of a jinga game. I finished up my web development and we were really impressed by how fast we finished the product.

The presentation went better than what I expected. The marketing and project management guys were able to research the product and pulled a really nice presentation.

We did not win the contest ...  But I learned a lot and met amazing people.




Lessons learned:
  • I am not the only one with a "great" idea. Over half of the crowed came up to pitch and I actually liked a lot of the ideas that were not selected.
  • I should practice my pitch. I failed at communicating my idea to the public and this is what they thought it was (reminder: it was about creating a bucket list for friends)
  • I should be passionate about my pitch and I should show it.
  • Focus on solving problems
  • Prove a track record of what I done before to support my pitch.
  • Think about which team to join and what project I could add the most value to.
  • Bring in my business cards. I regret not marketing myself. Especially given the melting pot nature of talented people that I could network with.
  • Bring in more of my friends. Knowing people makes it easier to jump into conversations and meet others.
  • Take breaks and stay healthy. I think I might bring some board games to play with the team while taking breaks.
  • Know my technologies and have suggestions for common solutions (web hosting, layouts, social marketing).
  • Learn about technologies that are common among other start ups (Javascript, Ruby, mobile development, facebook Graph API). 
  • Read the rules... yeah.

Great quotes I heard (paraphrasing for some of them):
"Your customers will not move away from the bad process they are following because it works. You have to make your product a 100 times better before they will adopt it."  - Tim Cheadle

"The biggest mistake you could make in start up weekend is to actually work on implementing your product" 


List of skills and technologies I got exposed to:
Bootstrap: I used it before but I never created a full project with it. It is a great way to prototype websites. There are a lot of great templates and themes ready to use.
Google Charts: a great way to charts. We used it to plot a pie graph of the categories and a Bar graph for the spending. We ran into an API key issue but we fixed it.
Google Maps API: Used to show multiple transaction locations. 
Android Geolocation: I had to get the coordination to plot them on the map. Google resources were really helpful. 
prezi: A great presentation tool.
Sublime text 2: A great text editor (Thanks +Dimitrios Arethas)



Monday, January 21, 2013

Podcasts

 I have always enjoyed talk shows but I have no interest in the topics presented. NPR has multiple good shows but I find it hard to plan my day around the radio shows (I don't do that for TVs either!). I starting listening to gaming podcasts and it led me into a whole ocean of podcast about all different topics. I tried rooting my android phone and I ended up losing all of my podcast.

I am going to create a list here and share my favorite topics with all of you:


Random Information and facts:
How Stuff Works

Nostalgia-Nerd Culture:
Laser Time

Programming:
This developer life
Hanselminute
.Net Rocks
Thirsty Developer

Money:
Clark Howard
Dave Ramsey
montlyfool
freakonomics

NPR:
Car Talk
This American Life

gaming:
Giant bombcats
8-4 Play
games dammit
Player one podcast
Retronauts

Electronic music (stay away):
UKF
Tiesto's club life

Science:
StarTalk

TV shows:
The Talking Dead
Dexter


WhyAmIListeniongToThis:
Joe Rogan Experience
Ratchet & The Geek

History:
Hardcore History with Dan Carlin

Comedy:
The Nerdist.

Friday, October 5, 2012

How to get market your product

A good product would be used because it is good

I have seen a lot of advertisement about products that don't function correctly and I quit them so early. I am a gamer and I have to wash my eyes after looking at the Facebook ads. There is no way I am giving your Facebook game a chance. I played mafia wars and I already know what those free to play games are. If you want to get a good following then spend the money on improving the product or the model you are using. I have used many products that were reccomended to me by my friend. I have used dropbox for one reason. It is awesome. It solves a problem and I will share my dropbox with my friends. Not because it is good, but because I care about my friends and I want them to use a good. WE WANT TO USE YOUR PRODUCTS BECAUSE THEY ARE GOOD.
Monday, September 24, 2012

Reading Information from a webconfig file in asp.net

Every once in a while, we would like to keep some of the application settings in a web config file to handle tasks like Database location and file location. Here is a quick way too read from a Web.config file  

<!-- Somewhere in the web.config fole -->
  <appSettings>
    <add key="NameOfTheKey" value="Value"/>
    <add key="FooKey" value="\\folder\Shared Documents"/>
  </appSettings>


Here is how to get the file in C#


string location = WebConfigurationManager.AppSettings["NameOfTheKey"]; //location will be "Value"

Hope that helps

A Web Afternoon - Notes

I went to a (surprisingly) fun event last weekend. The best way to describe it is it is a series of TED videos all talking about the web (with great cake and coffee in the back of the room).  Hopefully, you can follow these amazing speakers and get caught up on what you missed. I highly recommend going to the future A Web Afternoon events.


below are some of the quotes that I was able to doodle down (I really have no idea how to summarize this). I am sorry if I am misrepresenting any of the sessions or misquoting anyone.

===
Speaker: Jensen Inman
Contact: @edae
Topic:Be Awesome
"if you find yourself smiling and excited about what you are talking about then that is the thing you should do"
"Compare shoes.. if you are all wearing the same shoes then you are hanging out with the same people"
===
Speaker: Igor
Contact:
Topic: Yap Story - story of a start up
David vs gollaiath.
"to keep up, you will find yourself spending 8 hours to keep up, and 8 hours to surpress"
Koala bottle (using a cute descriptive name can help)
yoko onno apple in the art exhibit
===
Speaker: Todd Moy
Contact: @toddmoy
Topic: ..magic
"I can't do magic, I can help you see it"
user experience is the intercention between the user's mental model and interaction and the Designer's system.
-A  Beautiful Lie:
"fiiction can be more compelling than truth"
examples:
Turbo tax and the "analysing your taxis status loading bar"
Gmail "recall" feature delaying the email for a couple of seconds.
- Slight of hand
"work while they are distracted"
red paper heart (I don't remember why I wrote that)
===

Speaker: Doc Waller
Contact: :@docWaller
Topic: The power of words
I am having a hard time writing about this session. It was mind blowing and made me think about a lot of stuff. I found myself day dreaming and relating to every word.
"Transparency is sexy"
"Less ____ More Layman"

"Pinocchio had a rock bottom"
"Power words vs word with power"
"The Champ is here"
http://www.shopliftwindchimes.com/compliment.html
===

Speaker: Josh yolkert
Contact: @Skookum
Topic: Destruction
build -> fix -> integrate
"We are ____ shop" will die
===



I think I will stop here for now. I have 4 more pages of notes and it is getting really late
More info could be found here.
http://webafternoon.com
 

Razor Helpers

Razor helpers work just like functions in C# and JS. Create a function (and pass parameters to it if needed) and call it to draw the HTML.


Example:
@helper ShowName(string Name)
    {
          <p> hello @Name <p>
}

and then to use it

ShowName("Ammar")
ShowName("Mike")

The HTML will transplate to
<p> hello Ammar <p>
<p> hello Mike<p>

The output will show:
Hello Ammar
Hello Mike
Saturday, September 1, 2012

CSS quick cheat sheet/tutorial

I think it is about time I start building a cheat sheet for myself. Here is a CSS one to cover up all the basics.

How to use a CSS from another file:
<head>
<link rel="stylesheet" type="text/css" href="mystyle.css" />
</head>

Elements and definition
SELECTOR { PROPERTY: VALUE; PROPERTY:VALUE;}
h1 { Color: BLUE; fontsize:12px;}

Comments:
/*This is how you comment*/

how to apply the style:
in the html line, use style="Color:Blue"

how to write a CSS
something
{
font-Size: 24px;
}

how write a CSS to apply it to what
. means  class selector for multiple elements  e.g. .RegisterElements. Or you can get p.RegisterElements

# means selects an id  e.g.  id="item"