Tumgik
bhatthub-blog · 12 years
Link
I’m learning to code. Slowly. I can make a simple app that does something just for me, like scheduling text message reminders or displaying all the covers of digital books I’ve bought (gonna need that “virtual bookshelf” or I’ll forget everything I’ve read). I entered one of my old company’s...
28 notes · View notes
bhatthub-blog · 12 years
Text
["Speaker Post"] Judgement does not go up with experience....
....but hopefully goes up exponentially with it. Words said by the two "speakers" we met last night. I put "speakers" in quotes because they didn't come to us to give us a talk, they came just to get to know us. To understand why we were doing DBC and becoming application engineers....and maybe give some advice along the way. They also brought whiskey and champagne for everybody, so they bribed us to love them. The mentors that came were Tammer Saleh and Randall Thomas, founders at [Thunderbolt Labs](http://thunderboltlabs.com/). These guys were a riot to listen to and hang out with, people that have crafted their skill to a point of where I want to be. Why? Because they can take the whole team and live on a beach in Barcelona for a month and work from there...and can essentially be hired to build just about anything even if they don't know the language. They can reject multi-million dollar clients and contribute to the open source community...and be 100% ok with that. They hammered home the point that the more you give to the community the more they will give back to you. That the colleagues surrounding us will one day become our greatest resource, so give as much to them as you can. I'm not entirely sure if Thunderbolt Labs would have been such a success if they hadn't given so much to the community, gone through the strokes of working in a startup, and founding a startup. Something about these two really let me feel comfortable, maybe it was the whiskey...who knows, but they were so genuine and I really didnt feel like I was trying to impress someone or gain a contact when talking to them. Usually when you meet people higher up in the industry you try to impress them in one way or another, but with these guys....this may sound a bit odd...I just wanted to be their friends. I listened to their whole talk and listened to the advice they had to give and all that I could say after was...."damn, I want to be like you guys." They don't hire DBC students but if they had an internship program I'd already be signed up. ...stay tuned later today for a post on our final project.
5 notes · View notes
bhatthub-blog · 12 years
Link
Like farming was in the 17th century, factory work during the industrial revolution, construction during the Great Depression, and manufacturing after World War II. Better, because writing code is a creative act which can be done with or without a traditional (antiquated?) office-based job, and...
735 notes · View notes
bhatthub-blog · 12 years
Text
When I've hit the ground, neither lost nor found, if you'll believe in me I'll still believe...
First off I want to apologize to my readers it's been a little while since my last blog post. We started working on the rails framework last night which basically works off of the Model View Controller design pattern.![](http://media.tumblr.com/tumblr_mdfsmbHTBY1rneqpt.png) As Shereef has been saying all last week, we're in the homestretch and it's time to "lean in". We still have about 60% of our learning to do even though DBC is over 60% completed. I'm starting to see a very distinct pattern when learning rails. When I don't quite understand a concept, I know a break from that concept will help clarify my understanding. It's weird to think like that, but Hiten Shah(co-founder of Kissmetrics) gave a great example of this during his talk...He would ask one of his engineers about a book he had just finished and the engineer couldn't spit back some of the concepts the book had. But a few days later that same engineer could give a synopsis of all the concepts that book had encountered. He said that this individual had a lot of "horsepower". Meaning while somebody would slowly try to read and process the concepts in real time. The engineer would absorb the whole book quickly and then process it over a couple days and then spit the book back at you....This is how I feel my brain is working right now. I'm drinking out of a firehouse with all this information coming at me at once. My brain is absorbing all these concepts at a lightning quick learning pace, and sometimes I have to wait for my brain to process it. Understanding this whole view has allowed me to get less frustrated if something doesn't seem to 'click', because I know I just haven't given myself ample time to digest the material. Today is Diwali and it's the first time that I haven't been home for the Diwali season. Been feeling a bit homesick for the past couple days because of this. My Indian culture is always on my mind. An important aspect I want to hold throughout my life is that I want to remain heavily tied to my Indian culture. I've gone around to all of my colleagues wishing them a happy diwali tossing them high fives and most just turn and look at me like this: ![](http://25.media.tumblr.com/tumblr_mdczzoIdeE1riqizno1_250.gif) But almost all of them have struck up a conversation with me asking more about Diwali. Makes me realize how special my culture is and truly how genuine and caring my colleagues at DBC are.
3 notes · View notes
bhatthub-blog · 12 years
Text
They see me scrapin' they hatin'
Monday came time for group projects and was I excited to dive into something more robust than the daily challenges I was used to seeing. We all got assigned to do a craigslist scraper, which in essence takes a url and scrapes all the data then parses them into a title, price and date then emails you a synopsis of the data found on the site. Sounds easy? Well it kinda was. The hardest part, that was really unforeseen, was working with other people. When strong personalities collide it does not make make for a great learning environment. I think that was kind of the point for this exercise. Shereef knew that we were very capable of completing the task in a day or so but he knew our ultimate challenge would be working with other people. Managing people and their work was by far the hardest part of this challenge. I may not have learned as much as I would've hoped for in this challenge because our team lacked a certain cohesiveness to make a suitable learning environment, but we are all better off for it because it taught us how to work as a team...something just as important as programming knowledge. It was truly a humbling experience because it reminded me that the relationship between man and machine is just as important as the relationship between man and colleague.
2 notes · View notes
bhatthub-blog · 12 years
Text
Test before development...umm what?
Old philosophy would say that you need to have developed something in order to test it. Well TDD philosophy says you must write a test for something you will develop. Why you ask?? Well the thought is that if you focus on the requirements before you develop a feature or a program...it'd be easier to write the code. TDD not only helps you do that but also helps in refactoring code, getting rid of duplicate methods that you may not need. I'm slowly twisting my brain in a more TDD way, and it's really helping me in writing efficient/elegant code.
0 notes
bhatthub-blog · 12 years
Link
To employers:
Hire junior devs!
I am writing this not because it is completely self-serving — at least, not entirely because it is completely self-serving — but because I have been hearing people in the industry say so, and I didn’t want to be guilty of, you know, hoarding their knowledge.
On...
23 notes · View notes
bhatthub-blog · 12 years
Text
You down with OOP....yea you know me. Humbling experiences
Yes for those familiar with naughty by nature would kinda get that reference...for those familiar with object orientated programming would get one word...and for those familiar with both, well you don't need any explanation. Object orientated programming has consumed my life, as soon as I think I got it...it tosses me back off the deep-end. But repetition is key! I often think of the movie Karate kid, when young Daniel-san wanted to learn Karate but all Mr. Miyagi would teach him is how to wax his car, "wax-on, wax-off". Daniel-san eventually found out that even though he wasn't learning how to punch or kick directly, he was repeatedly practicing the basics which in-turn subconsciously taught him karate. He later went on becoming the Karate Kid and the rest is history. Learning and using the basics correctly right now will undoubtedly help me become a better programmer in the future. Shereef being our Mr. Miyagi, has always said that even if we take in 40% of what we do on a daily basis it is more than enough. Because that's 40% that you didn't know yesterday and that's 40% you don't have to learn tomorrow. It's very tough being frustrated staring at a problem you just did and trying to explain that same problem to another person, because you can't quite explain why you used a certain method. While it may be frustrating at the time, I can only think that A) me trying to explain my logic to someone else is helping his/her learning experience and B) its helping me develop a more concrete understanding of that method or problem. It's always a humbling experience trying to wiggle my way through a problem I just did literally a couple hours ago. But everything that is being done at DBC can be looked at as a humbling experience, it's very easy to become overwhelmed by everything, and be locked into your own zone. But it's most important to ask for help when needed and give help when you see someone struggling with a problem. Because in 10 weeks everyone in this classroom will become a world class beginner developer, and in 10 weeks each one my colleagues will become my greatest and most invaluable resource. I'm not here only working for myself but I'm working for those around me as well.
3 notes · View notes
bhatthub-blog · 12 years
Text
One of the most important things about a programmer is the ability to ship code - TJ Murphy
TJ Murphy came to speak to us last night and talked about his background and how he got to this point. Just a little background on TJ, he was plucked out to work for zynga during its better days and now is a founder at another iOS gaming company called mino monsters. His story to tech stardom was very entertaining. He received a 5 on the AP calc exam at the age of 12, he was set to finish college in 2 years with 2 degrees and a masters. But then, in his own words "world of warcraft" happened and dropped out. Finally he found his way to zynga and then eventually to Y combinator backed minomonsters. Just goes to show....if there is a will there is a way. But he said something that really got me thinking, "one of the most important things for you to get a job would be to possess the ability to ship code". Too many times programmers get attached to their code and often spend months working on a project that should've been done in weeks. Not because they aren't competent enough to program but because they've become too attached to your code. In comes OOP..... As soon as you think you have gotten the hang of Ruby, nope they slap you in the face and hand you a ticking bomb telling you it will explode in 30 seconds. This was how I felt when trying to wrap my head around Object Orientated Programming. Most languages support and use OOP now because it makes more sense to organize around "objects" versus "actions". OOP lets you future proof your program...which lets shipping code less painful :). If you need to add a feature or fix a bug its easier to distinguish where you need to do this, versus looking through large methods surrounding actions. Because if you fix one line of code in a method revolving around an action....odds are that same action are impacting many other actions. Which means you're neck deep in code trying to fix one bug or upgrade one feature. Now trying to think in an OOP way is a whole different animal. We are truly going to have to twist our brain for a day or two to get used to thinking like this. I've quickly come to find out that in conjuction with OOP comes TDD (Test Driven Development). Came home, caught up on some modern family....which was hysterical, and then went to bed.
0 notes
bhatthub-blog · 12 years
Text
Weekend escapes and Mentor Day
The weekend came and went, but I figured I'd unwind a bit before going back to the office. The roommates and I ended up heading down to fisherman's wharf area to check out "Fleet Week" and Americas Cup which ended up being very fun. ![](http://media.tumblr.com/tumblr_mbmx55fpP51rneqpt.jpg) I ate some of the infamous "In n Out", whom my friends have told me is like eating greasy heaven (you know who you are), but it really wasn't that good. Yes, I got everything but the meat animal style....but it wasn't what everybody was saying. Maybe it was a fluke and we'll see if i'll go again. Apart from a bum telling me to go back to China....yes I'm Indian, it was a pretty great day. Headed into the office much later in the day for some late night work. ![](http://media.tumblr.com/tumblr_mbmxevL8Xw1rneqpt.jpg) Monday I switched pair partners and ran into a bowling method that is truly giving me fits. I don't know if anybody remembers how to add up a bowling score but who ever invented that method should be punched in the face. I will explain how I solved this partly because I haven't solved it yet and partly because I wanted to keep this post light on the coding jargon. We had a mentor meet n' greet monday night, tried plenty of IPA's and this awesome potato garlic pizza. Which I'm sad to say is the best pizza I've ever had (still have that chicago pride...but this pizza slaps stuffed crust in the face). Some of the people/companies that were in attendance were Steve Huffman (Reddit and Hipmunk), justin.tv, soldsie, tapjoy, and past boots. Each of us were given a person who works in the field and a former boot. My former boot, Ken, works at Keas. Keas is a great company that gives companies a Fitness Rewards program for their employees. The health industry is truly ripe for disruption....as well as the real estate industry but that's for another time. Dev Bootcamp does a great job in providing you many great insights and opinions from various people and avenues. For instance Shereef may not agree entirely with what Steve may say but its important for us to be exposed to be his opinion, and DBC understands that. The guidance that is offered here is plentiful, never will I feel lost on this journey....because not only do I have 50 of the brightest colleagues, but i also have 15 or so of the brightest teachers and staff, and now 54 very qualified mentors at my disposal. Also I picked up this Angry Orchard apple- ginger cider at the store...i'd suggest everyone try it. ![](http://media.tumblr.com/tumblr_mbmy9wf72r1rneqpt.jpg)
0 notes
bhatthub-blog · 12 years
Text
Day 4 and Rockstars
I'll start out this post with some technical stuff. I began the day solving a birthday timestamp method meaning that this method would spit out how old you are in years, months, and days. This required us to write two methods: one getting a birthday and formatting it into the proper format, two grabbing the output from the first method and then applying it to the timestamp method. Throughout this week my method of thinking has been changing, as to how I approach these problems. I used to dive head first into writing code then figuring out what I need to change as I go along. But one of my teachers, Jeffery, had said that writing pseudocode is one of the most important things a programmer can do. Pseudocode is this: Set moveCount to 1 FOR each row on the board FOR each column on the board IF gameBoard position (row, column) is occupied THEN CALL findAdjacentTiles with row, column INCREMENT moveCount END IF END FOR END FOR Basically stating what a computer has to logically do to approach to your conclusion or result. This has really helped me visualize what needs to be done. So I used my newly acquired regex skills to easily the birthdate of the user: def birthdate puts "When is your birthday in the format mm/dd/yyyy?" date = gets.chomp if date =~ /\d{2}\/\d{2}\/\d{4}/ split_date = date.split("/") birthdate = Time.new(split_date[2], split_date[0], split_date[1]) end end This allows a birthdate in mm/dd/yyyy format to get formatted in yyyy-mm-dd. This is important because it allows for me to use the Time method and easily subtract the year, month, and day from the birthdate. But then I would run into the problem if the birthdate month/day is greater than the current month/day. Well here is how i worked around it: if day
0 notes
bhatthub-blog · 12 years
Text
Day 3 - Molding the Human Architect
From the first day to the third we've come to know DBC's ultimate message. They want to build an architect and not a brick mason. Our materials are Ruby, JS, CSS, HTML, and every other programming language out there. But they also incorporate our "human-ness" to being an engineer as well. DBC encourages us not live in a bubble, but to be well aware of ourselves and others. We are here to learn and not be instructed to build something using materials, but to design a structure ourselves with the tools and materials given to us by our challenges and teachers. A brick layer wouldn't know how to construct the sistine chapel, but an architect can design it and then construct it. That is what DBC is set here to do to its students.
The rest of the day was spent coding, as I spent most of my night figuring out what regex does. 
Boring blog post...i'll do better later
0 notes
bhatthub-blog · 12 years
Text
Day 2...did not consist of banging my head against my desk
We started out today with coding promptly at 9am. First challenge of the day was to program a method that can convert a word into pig latin. So if the word started with a vowel then that word is returned and given an "ay" at the end, but if the word does not begin with a vowel....well then you're screwed. You must take all the consonants before the vowel and shovel it to the end of the word and then add "ay". Not only that but we were given a sub-challenge to take a sentence and convert each word into pig latin then return the sentence. I figured once I get the method for turning a word into "pig latin", then the sub challenge would be simple, which was the case.    It took me a while to wrap my head on how I was going to turn a word into "pig latin". My thought process was:
Define what vowels are
Split the word that is entered into an array
From the array find where the vowel lies
If the vowel is the first letter...then GREAT!...just add "ay" at the end and have the word latin-ized word spit back out with the "ay" at the end. 
If the vowel isn't the first letter we must do a loop to search each element in the array and figure out where the vowels are
After we have distinguished where the vowel is we have to .shift each variable before and add it to the end
Then finally putting "ay" at the end of the word and spitting out the end result.
https://gist.github.com/3829838
After pig latinizing the word was done, it was simple to apply this method to each word in a sentence and spit the new sentence back out.
Yes, I know I need to work on my naming of values. As Shereef said, "You can never have a long enough discussion about what you name your values."
0 notes
bhatthub-blog · 12 years
Text
Day 1 in the repositories
Well Day 1 came and went very quickly. Many of us got the the office a little early in anticipation for the classes. We were instructed to wait outside until exactly 9 AM. Right before the doors were about to open we begin to hear a loud roar coming from the office, as the doors open we were greeted with the staff giving us high fives, dancing, and pure excitement. The atmosphere was electric. Everybody was in the classroom with one common goal which was to become a world class developer. Making introductions with everybody was fairly easy, and voicing your own opinions was surprisingly easy as well. 
The morning consisted of mainly logistical stuff i.e. introductions, what they expect from us, what we can expect from them, schedule, etc. etc. Then the programming began in the afternoon right after lunch. A quote that was read to us that put a lot of things handled today into perspective was, 
"If you want to go fast, go alone. If you want to go far, go together."
We began pair programming today, meaning two screens are essentially mirrored with one another, which allows us to work through problems together. I agree that if you want to do something fast you can do it yourself, but if you truly want to understand the source code then go ahead and try and explain it to some one else. Because after today I guarantee you that learn 10x more teaching someone and asking for help from your peer rather than constantly trying to figure out something on your own. 
1 note · View note
bhatthub-blog · 12 years
Text
Closing Time
Well it's now a little more than a week before I make the big jump out to SF. This past month has been perspectively the quickest month of the year. With wrapping up everything at work, finding roommates, finding an apartment, trying to find time to hang out with friends and family, and finally keeping up with all the material DBC has already thrown my way. It's tough not to feel overwhelmed with everything. From the emotion of having to leave family and friends...man am I really going to miss them, to the stresses of being alone taking on a new challenge. But fear not! It hasn't been such a debbie downer month. The school has gotten tons of great publicity recently from the Dan Rather report, to articles on Hacker News, and their well received new home page. Shameless DBC plug here: http://devbootcamp.com. Everybody should check out the video, it truly gives a great perspective on the program. Any doubts that were in my mind beginning this month have been washed away by the mentors and fellow colleagues ill be joining. Ranging from Stanford grads to high school prodigies. But no one provided more insight than my teacher, Shereef Bishay. He gives a great Ted talk (http://www.youtube.com/watch?v=D--Ob2CxLds), in which he starts out with a quote from Albert Einstein
"Everything that is really great and inspiring is created by the individual who can labor in freedom"
A little background on him is that he created a website, careeregypt.com, then sold it to Microsoft 2 years later. He went on to become a rockstar yada yada yada....
He truly advocates an open enterprise workplace. He says that, 
"We live in democracies and we work in dictatorships"
His first source of inspiration for change came from open source software companies, such as mozilla and wikipedia. They've somehow figured out how to "employ" hundreds of engineers to write billions lines of code without "a single person telling someone else what to do". Basically summarizes a perfect workplace. Truly inspiring stuff...
Well its a week away, and one more week with family and friends. Now I'll leave you with this hysterical gif that always seems to make me laugh:
2 notes · View notes
bhatthub-blog · 12 years
Text
Standing out from the crowd
As I first got my "To-Do's" from DBC (devBootcamp), I began to think why I even joined to begin with. Why would I willingly want to participate in turning my brain to a pulp day in and day out? To stare at a computer screen with a bunch of coding lines for 12+ hours a day? To share a 2 bedroom apartment with 6 strangers whom I've never even met before? There weren't a lot of compelling reasons why to pack up ship and move out to the west coast, but one....I wanted to be different.
These days its common to come across people who have "tried" to begin a startup or who had an idea but needed a technical co-founder to make that vision attainable. I was no different. I was fooling myself into thinking that my basic level coding knowledge or outsourced code would ever attain the status of giants like Twitter, Instagram, Facebook, or Dropbox. I came to an understanding that I was no better than anyone else trying to "develop" the next big idea. I saw a trend in The Valley that each successful tech company had a CTO from that was engrained in the fabric of that company from the very beginning. I was tired of coming up with ideas in which I thought would be very successful but not having the adequate knowledge to build a great product. We often hear the quote:
"Live as if you were to die tomorrow. Learn as if you were to live forever." - Mahatma Gandhi
I'm a biochemistry major who is now turning into a web application developer. Before I never had the means to learn or teach myself because I didn't even know where to begin. This is why I joined DBC. I enrolled because of the programming skills they teach us, the network they give us, and the confidence they bestow upon us. I wanted to stand on the shoulders of the Silicon Valley tech giants. When I first applied I didn't think I would get in. Then after my first interview I didn't think I'd get a second one. Here we are 3 months later about to embark on a journey that will undoubtedly change the rest my life. 
14 notes · View notes