posts
192 rows
This data as json, CSV (advanced)
Suggested facets: tags (array)
id ▼ | title | rawbody | date | tags | mdbody | url |
---|---|---|---|---|---|---|
1 | Conversation with a 2 yo | <div class="posthaven-post-body"><p>Me: Do you like Superman? </p><p>Sempi: No</p><p>Me: How about Batman?</p><p>Sempi: No</p><p>Me: Who do you like? </p><p>Sempi: Amma</p><p>Me: Aww. Do you like Appa? </p><p>Sempi: Yeah (matter of fact voice). </p><p>Sempi: I like you when you're at work. I don't like you when you're home. </p><p>Me: o_O</p></div> | 1434601640 | ["personal", "2yo", "sempi"] | Me: Do you like Superman? Sempi: No Me: How about Batman? Sempi: No Me: Who do you like? Sempi: Amma Me: Aww. Do you like Appa? Sempi: Yeah (matter of fact voice). Sempi: I like you when you're at work. I don't like you when you're home. Me: o\_O | http://blog.amjith.com/conversation-with-a-2-yo |
2 | Conversations with a 2yo | <div class="posthaven-post-body"><p>Fine summer evening, I'm taking Sempi on a walk. He's carrying a flash light and shining it on every piece of object on the side walk and asking me questions. </p><p>Sempi: Appa, what is this? </p><p>Me: It's a rock.</p><p>Sempi: Oh. What is this? </p><p>Me: That's a piece of paper.</p><p>Sempi: Oh. What is this? </p><p>Me: It's a cigarette. Actually it's a cigarette butt. </p><p>Sempi: Huh? Do you keep it in the butt? </p><p>Me: Hahahaha. No. Sempi. *Still laughing uncontrollably*</p><p>Sempi: Hehehe. *Starts laughing*</p><p><br></p><p>He knows when he's made a joke, even though he has no clue why it's funny.</p></div> | 1435863995 | ["2yo", "personal", "sempi"] | Fine summer evening, I'm taking Sempi on a walk. He's carrying a flash light and shining it on every piece of object on the side walk and asking me questions. Sempi: Appa, what is this? Me: It's a rock. Sempi: Oh. What is this? Me: That's a piece of paper. Sempi: Oh. What is this? Me: It's a cigarette. Actually it's a cigarette butt. Sempi: Huh? Do you keep it in the butt? Me: Hahahaha. No. Sempi. \*Still laughing uncontrollably\* Sempi: Hehehe. \*Starts laughing\* He knows when he's made a joke, even though he has no clue why it's funny. | http://blog.amjith.com/conversations-with-a-2yo |
3 | Conversations with a 2 year old - Part 2 | <div class="posthaven-post-body"><p>Yoshi: Sempi, your appa is dark and handsome.<br></p><p>Sempi: Where?</p><p><br></p></div> | 1426392660 | ["personal", "2yo", "sempi"] | Yoshi: Sempi, your appa is dark and handsome. Sempi: Where? | http://blog.amjith.com/conversations-with-a-2-year-old-part-2 |
4 | Nice try, dad | <div class="posthaven-post-body"><p>Vian is still having trouble pronouncing the sound 'ka'. He uses the sound 'ta' when he tries to say 'ka'. See <a href="http://blog.amjith.com/truly-wonderful-the-mind-of-a-child-is" target="_blank">previous</a><a href="http://blog.amjith.com/truly-wonderful-the-mind-of-a-child-is" target="_blank"> post</a> for some examples. </p><p>We're reading a picture book on the couch. </p><p>Vian: What is this?</p><p>Me: That is a farm.</p><p>Vian: Farm!?</p><p>Vian: What is this?</p><p>Me: That's a chicken.</p><p>Vian: A Tciten? </p><p>Me: Yeah a chicken. </p><p>I noticed that his pronunciation of "Tciten" is suspiciously close to how he would pronounce "Kitchen". </p><p>So I figured I'll take this opportunity to troll him using cognitive dissonance.</p><p>Me: Where is Amma?</p><p>Vian: Over there (points to Kitchen).</p><p>Me: What is that room called.</p><p>Vian: That's a "Titen".</p><p>Me: What is this called? (pointing to the chicken in a book). </p><p>Vian stares at me a second while he figures out my trap.</p><p>Vian: It's a dut (duck). </p><p>Once again I'm outsmarted by a two-year-old. Never been prouder. </p></div> | 1538418628 | ["personal", "2yo", "vian"] | Vian is still having trouble pronouncing the sound 'ka'. He uses the sound 'ta' when he tries to say 'ka'. See [previous](http://blog.amjith.com/truly-wonderful-the-mind-of-a-child-is) [post](http://blog.amjith.com/truly-wonderful-the-mind-of-a-child-is) for some examples. We're reading a picture book on the couch. Vian: What is this? Me: That is a farm. Vian: Farm!? Vian: What is this? Me: That's a chicken. Vian: A Tciten? Me: Yeah a chicken. I noticed that his pronunciation of "Tciten" is suspiciously close to how he would pronounce "Kitchen". So I figured I'll take this opportunity to troll him using cognitive dissonance. Me: Where is Amma? Vian: Over there (points to Kitchen). Me: What is that room called. Vian: That's a "Titen". Me: What is this called? (pointing to the chicken in a book). Vian stares at me a second while he figures out my trap. Vian: It's a dut (duck). Once again I'm outsmarted by a two-year-old. Never been prouder. | http://blog.amjith.com/nice-try-dad |
5 | Adventures with a 2yo | <div class="posthaven-post-body"><p>Conversation between Yoshi and I. </p><p>Yoshi: I'm worried Sempi (our 2yo) might be a little dyslexic. </p><p>Me: Why? </p><p>Yoshi: He occasionally reverses the words in his rhymes.</p><p>Me: Like what? </p><p>Yoshi: "Frosty the snow man was a happy jolly soul" . It's supposed to be "Jolly happy soul". </p><p>Me: Oh yeah. He could be dyslexic or he could have a troll dad who subtly changes his rhymes to see if he'll catch it. (sheepish grin)</p><p>Yoshi: Oh boy. What else did you teach him?</p><p>Me: I'm trying "Itsy bitsy tiger", "Row row, row the boat gently down the street" and so on. </p><p><br></p><p>#ProudDad. </p></div> | 1444363933 | ["personal", "2yo", "sempi"] | Conversation between Yoshi and I. Yoshi: I'm worried Sempi (our 2yo) might be a little dyslexic. Me: Why? Yoshi: He occasionally reverses the words in his rhymes. Me: Like what? Yoshi: "Frosty the snow man was a happy jolly soul" . It's supposed to be "Jolly happy soul". Me: Oh yeah. He could be dyslexic or he could have a troll dad who subtly changes his rhymes to see if he'll catch it. (sheepish grin) Yoshi: Oh boy. What else did you teach him? Me: I'm trying "Itsy bitsy tiger", "Row row, row the boat gently down the street" and so on. #ProudDad. | http://blog.amjith.com/adventures-with-a-2yo |
6 | Zen master or a troll? | <div class="posthaven-post-body"><p>My 2-year old (Vian) is getting eloquent by the day. He is not afraid to try out his new vocabulary.</p><p>Yesterday we were playing in the backyard. The kids want me to find them a rake. I walk around trying to find it, muttering to myself. </p><p>Vian comes over and says, "I help you".</p><p>I accept graciously and tell him that I'm looking for the rake. </p><p>Me: I wonder where it is. (muttering to myself). </p><p>Vian walks over to me and pulls my hand. In all seriousness he says, </p><p>Vian: Appa, it is somewhere. </p><p>And walks away with the satisfaction of having just helped his clueless dad. </p></div> | 1531924742 | ["personal", "2yo", "vian"] | My 2-year old (Vian) is getting eloquent by the day. He is not afraid to try out his new vocabulary. Yesterday we were playing in the backyard. The kids want me to find them a rake. I walk around trying to find it, muttering to myself. Vian comes over and says, "I help you". I accept graciously and tell him that I'm looking for the rake. Me: I wonder where it is. (muttering to myself). Vian walks over to me and pulls my hand. In all seriousness he says, Vian: Appa, it is somewhere. And walks away with the satisfaction of having just helped his clueless dad. | http://blog.amjith.com/zen-master-or-a-troll |
7 | Pycast - Python screencasts | <div class="posthaven-post-body"><p><a href="https://www.kickstarter.com/projects/127250310/pycast-python-and-data-science-screencasts">Pycast</a> - Weekly screencasts on Python and DataScience by Matt Harrison. </p><p><a href="http://hairysun.com/">Matt</a> is bootstrapping <a href="http://pycast.io">pycast</a> through <a href="https://www.kickstarter.com/projects/127250310/pycast-python-and-data-science-screencasts">kickstarter</a>. I'm excited about it because I've attended Matt's tutorials and came away feeling leveled up on my Python chops. </p><p>Nearly 5 years ago I was getting started in Python and learning on my own by writing small scripts to automate silly stuff. I wasn't writing anything adventurous and I was looking for a way to improve my skills.</p><p>Right around that time I started getting involved in the open source community in Utah and decided to go to a local conference. Matt was doing a 3 hour tutorial that covered beginner to intermediate Python. When the session was over I felt empowered. I couldn't wait to get back home to do the exercises that he had laid out during the training. After working through them I felt like I really knew the language. I was writing generators and decorators by the end of it. It was an accelerated learning experience that took me from a novice to a <a href="http://en.wikipedia.org/wiki/Journeyman">journeyman</a>. </p><p>The beauty of his training is, it wasn't merely a brain dump, he was teaching me to how to learn, where to look up the docs, how to recognize idiomatic python and best practices of programming. </p><p>I eventually landed a job doing full time Python at an awesome <a href="https://newrelic.com/">company</a>.<br></p><p>That's why I'm excited about his new venture. This is a great opportunity for me to dive into Data Science and I can't wait to see his videos and workout the exercises.</p><p>If you're still on the fence about it, leave a <a href="https://www.kickstarter.com/projects/127250310/pycast-python-… | 1433350829 | ["python"] | [Pycast](https://www.kickstarter.com/projects/127250310/pycast-python-and-data-science-screencasts) - Weekly screencasts on Python and DataScience by Matt Harrison. [Matt](http://hairysun.com/) is bootstrapping [pycast](http://pycast.io) through [kickstarter](https://www.kickstarter.com/projects/127250310/pycast-python-and-data-science-screencasts). I'm excited about it because I've attended Matt's tutorials and came away feeling leveled up on my Python chops. Nearly 5 years ago I was getting started in Python and learning on my own by writing small scripts to automate silly stuff. I wasn't writing anything adventurous and I was looking for a way to improve my skills. Right around that time I started getting involved in the open source community in Utah and decided to go to a local conference. Matt was doing a 3 hour tutorial that covered beginner to intermediate Python. When the session was over I felt empowered. I couldn't wait to get back home to do the exercises that he had laid out during the training. After working through them I felt like I really knew the language. I was writing generators and decorators by the end of it. It was an accelerated learning experience that took me from a novice to a [journeyman](http://en.wikipedia.org/wiki/Journeyman). The beauty of his training is, it wasn't merely a brain dump, he was teaching me to how to learn, where to look up the docs, how to recognize idiomatic python and best practices of programming. I eventually landed a job doing full time Python at an awesome [company](https://newrelic.com/). That's why I'm excited about his new venture. This is a great opportunity for me to dive into Data Science and I can't wait to see his videos and workout the exercises. If you're still on the fence about it, leave a [comment](https://www.kickstarter.com/projects/127250310/pycast-python-and-data-science-screencasts/comments) on his kickstarter page with your question. He's a friendly and responsive person. | http://blog.amjith.com/pycast-python-screencasts |
8 | Ok Wiretap | <div class="posthaven-post-body"><p>We don't have any wiretap devices like Google Home or Amazon Echo at our house. So whenever we encounter on in the wild the kids get excited about talking to them. </p><p>We went on a vacation where the AirBnB had a Google version of the wiretap. So Sempi requested it to tell him a story and was pleased with the results.</p><p>Vian decided that he will try his luck on this device. Pretty soon I heard him screaming:</p><p>"OK! DOODLE!" </p><p>"OK! DOODLE!" <br></p><p>"OK! DOODLE!" <br></p><p>Poor kid, one of these days he will learn how to pronounce the "Ga" sound. <br></p></div> | 1542844887 | ["2yo", "vian"] | We don't have any wiretap devices like Google Home or Amazon Echo at our house. So whenever we encounter on in the wild the kids get excited about talking to them. We went on a vacation where the AirBnB had a Google version of the wiretap. So Sempi requested it to tell him a story and was pleased with the results. Vian decided that he will try his luck on this device. Pretty soon I heard him screaming: "OK! DOODLE!" "OK! DOODLE!" "OK! DOODLE!" Poor kid, one of these days he will learn how to pronounce the "Ga" sound. | http://blog.amjith.com/ok-wiretap |
9 | Memoization Decorator | <div class="posthaven-post-body"><p>Recently I had the opportunity to give a short 10 min presentation on Memoization Decorator at our local UtahPython Users Group meeting. </p> <blockquote class="posterous_medium_quote"> <p><strong>Memoization: </strong></p> <ul> <li>Everytime a function is called, save the results in a cache (map).</li> <li>Next time the function is called with the exact same args, return the value from the cache instead of running the function.</li> </ul> </blockquote> <p>The code for memoization decorator for python is here: <a href="http://wiki.python.org/moin/PythonDecoratorLibrary#Memoize">http://wiki.python.org/moin/PythonDecoratorLibrary#Memoize</a></p> <p><strong>Example:</strong></p> <p>The typical recursive implementation of fibonacci calculation is pretty inefficient O(2^n). <span> </span></p> <div class="CodeRay"> <div class="code"><pre>def fibonacci(num): print 'fibonacci(%d)'%num if num in (0,1): return num return fibonacci(num-1) + fibonacci(num-2)<p>>>> math_funcs.fibonacci(4) # 9 function calls fibonacci(4) fibonacci(3) fibonacci(2) fibonacci(1) fibonacci(0) fibonacci(1) fibonacci(2) fibonacci(1) fibonacci(0) 3</p></pre></div> </div><p></p><p><span>But the memoized version makes it ridiculously efficient O(n) with very little effort.</span></p> <div class="CodeRay"> <div class="code"><pre><span class="keyword">import</span> <span class="include">memoized</span> <span class="decorator">@memoized</span> <span class="keyword">def</span> <span class="function">fibonacci</span>(num): <span class="keyword">print</span> <span class="string"><span class="delimiter">'</span><span class="content">fibonacci(%d)</span><span class="delimiter">'</span></span>%num <span class="keyword">if</span> num <span class="keyword">in</span> (<span class="integer">0</span>,<span class="integer">1</span>): <span class="keyword">return</span> num <span class="keyw… | 1328889780 | ["programming", "python"] | Recently I had the opportunity to give a short 10 min presentation on Memoization Decorator at our local UtahPython Users Group meeting. > > **Memoization:** > > > * Everytime a function is called, save the results in a cache (map). > * Next time the function is called with the exact same args, return the value from the cache instead of running the function. > > > The code for memoization decorator for python is here: <http://wiki.python.org/moin/PythonDecoratorLibrary#Memoize> **Example:** The typical recursive implementation of fibonacci calculation is pretty inefficient O(2^n). ``` def fibonacci(num): print 'fibonacci(%d)'%num if num in (0,1): return num return fibonacci(num-1) + fibonacci(num-2)>>> math\_funcs.fibonacci(4) # 9 function calls fibonacci(4) fibonacci(3) fibonacci(2) fibonacci(1) fibonacci(0) fibonacci(1) fibonacci(2) fibonacci(1) fibonacci(0) 3 ``` But the memoized version makes it ridiculously efficient O(n) with very little effort. ``` import memoized @memoized def fibonacci(num): print 'fibonacci(%d)'%num if num in (0,1): return num return fibonacci(num-1) + fibonacci(num-2) >>> math_funcs.mfibonacci(4) # 5 function calls fibonacci(4) fibonacci(3) fibonacci(2) fibonacci(1) fibonacci(0) 3 ``` **We just converted an algorithm from Exponential Complexity to Linear Complexity by simply adding the memoization decorator.** **Slides**: [Download memoization\_decorator.pdf](https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892925/hdxwrw9aoHWeSDNaJRq77jDRGdg/memoization_decorator.pdf) **Presentation:** I generated the slides using LaTeX Beamer. But instead of writing raw LaTeX code I used reStructured Text (rst) and used rst2beamer script to generate the .tex file. **Source:** The rst file and tex files are available in Github. [https://github.com/amjith/User-Group-Presentations/tree/master/memoization\_de...](https://github.com/amjith/User-G… | http://blog.amjith.com/memoization-decorator |
10 | Conversations with a 2yo | <div class="posthaven-post-body"><p>Sempi is playing in his room with some construction cones and trucks. He usually narrates his gameplay. </p><p>I walk into the room and right at the moment he says: </p><p>"Caution! Caution! Oversize load"</p><p>I wonder if it's coincidence or subliminal messaging. </p></div> | 1440222755 | ["personal", "2yo", "sempi"] | Sempi is playing in his room with some construction cones and trucks. He usually narrates his gameplay. I walk into the room and right at the moment he says: "Caution! Caution! Oversize load" I wonder if it's coincidence or subliminal messaging. | http://blog.amjith.com/conversations-with-a-2yo-2 |
11 | Conversations with a 2 year old - Part 3 | <div class="posthaven-post-body"><p>One lazy Saturday morning, I’m sitting in my chair in the living room. Sempi is playing with his trucks on the floor.<br></p><p>I pick up my laptop and open the lid. He brings his cement mixer truck, gently closes my laptop.</p><blockquote><p>Sempi: Appa no work. Play with Gumps.</p></blockquote><p>Then proceeds to drive his toy truck on the laptop lid making truck sounds.</p></div> | 1428167543 | ["personal", "2yo", "sempi"] | One lazy Saturday morning, I’m sitting in my chair in the living room. Sempi is playing with his trucks on the floor. I pick up my laptop and open the lid. He brings his cement mixer truck, gently closes my laptop. > Sempi: Appa no work. Play with Gumps. > > Then proceeds to drive his toy truck on the laptop lid making truck sounds. | http://blog.amjith.com/conversations-with-a-2-year-old-part-3 |
12 | Python Profiling - Part 1 | <div class="posthaven-post-body"><p>I gave a talk on profiling python code at the 2012 Utah Open Source Conference. Here are the <a href="http://bit.ly/J4lO2L">slides</a> and the accompanying <a href="http://bit.ly/IJTm8e">code</a>.</p> <p>There are three parts to this profiling talk:</p> <ul> <li>Standard Lib Tools - cProfile, Pstats</li> <li>Third Party Tools - line_profiler, mem_profiler</li> <li>Commercial Tools - New Relic</li> </ul><p>This is Part 1 of that talk. It covers:</p> <ul> <li>cProfile module - usage</li> <li>Pstats module - usage</li> <li>RunSnakeRun - GUI viewer</li> </ul><p><strong>Why Profiling:</strong></p> <ul> <li>Identify the bottle-necks.</li> <li>Optimize intelligently. </li> </ul><p>In God we trust, everyone else bring data</p> <p><span><strong><a href="http://docs.python.org/library/profile.html#module-cProfile">cProfile:</a></strong></span></p> <p>cProfile is a profiling module that is included in the Python's standard library. It instruments the code and reports the time to run each function and the number of times each function is called. </p> <p><strong>Basic Usage:</strong></p> <p>The sample code I'm profiling is finding the lowest common multiplier of two numbers. <a href="https://github.com/amjith/utosc_python_profiling/blob/master/code_samples/lcm.py">lcm.py</a></p> <div class="CodeRay"> <div class="code"><pre># lcm.py - ver1 def lcm(arg1, arg2): i = max(arg1, arg2) while i < (arg1 * arg2): if i % min(arg1,arg2) == 0: return i i += max(arg1,arg2) return(arg1 * arg2) lcm(21498497, 3890120)</pre></div> </div> <p>Let's run the profiler.</p> <div class="CodeRay"> <div class="code"><pre>$ python -m cProfile lcm.py 7780242 function calls in 4.474 seconds Ordered by: standard name ncalls tottime percall cumtime percall filename:lineno(function) 1 0.000 0.000 4.474 4.474 lcm.py:3() 1 2.713 2.713 4.474 4.474 lcm… | 1337134027 | ["programming", "python"] | I gave a talk on profiling python code at the 2012 Utah Open Source Conference. Here are the [slides](http://bit.ly/J4lO2L) and the accompanying [code](http://bit.ly/IJTm8e). There are three parts to this profiling talk: * Standard Lib Tools - cProfile, Pstats * Third Party Tools - line\_profiler, mem\_profiler * Commercial Tools - New Relic This is Part 1 of that talk. It covers: * cProfile module - usage * Pstats module - usage * RunSnakeRun - GUI viewer **Why Profiling:** * Identify the bottle-necks. * Optimize intelligently. In God we trust, everyone else bring data **[cProfile:](http://docs.python.org/library/profile.html#module-cProfile)** cProfile is a profiling module that is included in the Python's standard library. It instruments the code and reports the time to run each function and the number of times each function is called. **Basic Usage:** The sample code I'm profiling is finding the lowest common multiplier of two numbers. [lcm.py](https://github.com/amjith/utosc_python_profiling/blob/master/code_samples/lcm.py) ``` # lcm.py - ver1 def lcm(arg1, arg2): i = max(arg1, arg2) while i < (arg1 * arg2): if i % min(arg1,arg2) == 0: return i i += max(arg1,arg2) return(arg1 * arg2) lcm(21498497, 3890120) ``` Let's run the profiler. ``` $ python -m cProfile lcm.py 7780242 function calls in 4.474 seconds Ordered by: standard name ncalls tottime percall cumtime percall filename:lineno(function) 1 0.000 0.000 4.474 4.474 lcm.py:3() 1 2.713 2.713 4.474 4.474 lcm.py:3(lcm) 3890120 0.881 0.000 0.881 0.000 {max} 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects} 3890119 0.880 0.000 0.880 0.000 {min} ``` **Output Columns:** * ncalls - number of calls to a function. * tottime - total time spent in the function without counting calls to sub-functions. * percall - totti… | http://blog.amjith.com/python-profiling-part-1 |
13 | Montreal Bagels - 2yo review | <div class="posthaven-post-body"><p>I was in Montreal for PyCon 2015. I was told that Montreal was famous for it's bagels. So I brought home half-dozen bagels.</p><p>I made my son a delicious toasted bagel with cream cheese in the morning. He ate it with gusto and the following conversation ensues: </p><p>Me: Sempi, did you like the Montreal Bagels.</p><p>2yo: <b>It was ok</b> (as he proceeds to lick his fingers clean). </p><p>This kid is hard to impress. :)</p></div> | 1429021081 | ["personal", "2yo"] | I was in Montreal for PyCon 2015. I was told that Montreal was famous for it's bagels. So I brought home half-dozen bagels. I made my son a delicious toasted bagel with cream cheese in the morning. He ate it with gusto and the following conversation ensues: Me: Sempi, did you like the Montreal Bagels. 2yo: **It was ok** (as he proceeds to lick his fingers clean). This kid is hard to impress. :) | http://blog.amjith.com/montreal-bagels-2yo-views |
14 | Conversations with a 3yo | <div class="posthaven-post-body"><p>We're visiting India and the kids are playing with my brother's son, Thiralon (the 3yo protagonist). He's a matter of fact guy who is unintentionally hilarious. </p><p>---</p><p>The phone rings at home and Thiralon picks up the phone. It's his grandpa calling. </p><p>Grandpa: Hi Thiralon, how are you? </p><p>Thiralon: I'm fine.</p><p>Grandpa: What are you doing? </p><p>Thiralon: Right now I'm talking to you on the phone. </p><p>---</p><p>He's a rambunctious kid who loves to smash things. He has just smashed down a pillow fort. I'm trying to get him to admit he smashed it.</p><p>Me: Thiralon, what happened to the fort? </p><p>Thiralon: It broke down.</p><p>Me: How did it break?</p><p>Thiralon: It broke with a kaboom! </p><p>Me: LOL! Of course, it did. </p><p>---</p></div> | 1535937835 | ["personal", "3yo", "thiralon"] | We're visiting India and the kids are playing with my brother's son, Thiralon (the 3yo protagonist). He's a matter of fact guy who is unintentionally hilarious. --- The phone rings at home and Thiralon picks up the phone. It's his grandpa calling. Grandpa: Hi Thiralon, how are you? Thiralon: I'm fine. Grandpa: What are you doing? Thiralon: Right now I'm talking to you on the phone. --- He's a rambunctious kid who loves to smash things. He has just smashed down a pillow fort. I'm trying to get him to admit he smashed it. Me: Thiralon, what happened to the fort? Thiralon: It broke down. Me: How did it break? Thiralon: It broke with a kaboom! Me: LOL! Of course, it did. --- | http://blog.amjith.com/conversations-with-a-3yo-2 |
15 | Conversations with a 3yo | <div class="posthaven-post-body"><p>We're at a park in India. Sempi is sitting on a teeter-totter looking contraption. He's looking for a partner for the other side. <br></p><p>Sempi: Amma can you sit on the other side? <br></p><p>Yoshi: I'm too big to sit on that side Sempi. </p><p>Sempi: Appa, can you sit on that side?</p><p>Me: I'm flattered that you think I'm smaller than your mom. But I'm still too big.</p><p>Sempi: Maybe when you're flatter you can sit on the other side. </p><p><br></p><p>It was an unintentional pun joke, but I laughed heartily.</p></div> | 1445782369 | ["sempi", "3yo", "personal"] | We're at a park in India. Sempi is sitting on a teeter-totter looking contraption. He's looking for a partner for the other side. Sempi: Amma can you sit on the other side? Yoshi: I'm too big to sit on that side Sempi. Sempi: Appa, can you sit on that side? Me: I'm flattered that you think I'm smaller than your mom. But I'm still too big. Sempi: Maybe when you're flatter you can sit on the other side. It was an unintentional pun joke, but I laughed heartily. | http://blog.amjith.com/conversations-with-a-3yo |
16 | Conversations with a 2 yo | <div class="posthaven-post-body"><p>Sempi insisted on doing laundry, helping put away the clothes and sweeping the floor. </p><p><b>Yoshi: </b>When did you become such a big boy?</p><p><b>Sempi: </b>Three minutes ago. </p><p>Continues sweeping the floor with a big smile and a song. </p><p><b>Sempi: </b>I'm a street sweeper with a broom in my hand. </p></div> | 1431352172 | ["personal", "2yo", "sempi"] | Sempi insisted on doing laundry, helping put away the clothes and sweeping the floor. **Yoshi:**When did you become such a big boy? **Sempi:**Three minutes ago. Continues sweeping the floor with a big smile and a song. **Sempi:**I'm a street sweeper with a broom in my hand. | http://blog.amjith.com/conversations-with-a-2-yo |
17 | Rant about C++ dependency hell | <div class="posthaven-post-body"><p>When was the last time I vented about C++? The answer for that is always:</p> <p>"TOO LONG AGO". </p> <div>The initial friction to setup a substantial project using C++ is unfucking bearable.</div> <p></p> <div>When we started code revamp at work recently, I decided to be a good citizen and decided to incorporate <a href="http://cpptest.sourceforge.net/">cpptest</a>, a unit testing framework in our project.</div> <p></p> <div>It made me realize how unreasonably complicated Makefiles can be. After 3 hours of peeling away at the complexity I managed to add cpptest to the build dependency of the project. </div> <p></p> <div>Now time to write a few tests and check it out. I'm thinking "We are almost there". </div> <p></p> <div>FALSE!</div> <p></p> <div>Compilation gives me a gazillion error messages that make absolutely no sense. After about 30mins of <a href="http://stackoverflow.com/">StackOverflowing</a> and Googling, I find out that its not enough to include string.h and map.h in my header files, but I also need to namespace it. Of course there is no indication (not even a hint) of that in the error messages. So I add 'using namespace std' and get past it.</div> <p></p> <div>Awesome my first test is compiling successfully. Time to run this baby and declare victory. </div> <p></p> <div>Close! But no cigar.</div> <p></p> <div>The executable was unable to load the CppTest library during runtime. Argh!</div> <p></p> <div>I set my LD_LIBRARY_PATH env variable and now it's running. But I can't ask everyone in my team to do that, so I have to figure out how to statically link that library. </div> <p></p> <div>It's already 6pm and I'm hungry. That'll have to wait for another day. </div> <p></p> <div>TL;DR - C++ and Makefile can burn in a fire of thousand suns.</div></div> | 1317785880 | ["programming"] | When was the last time I vented about C++? The answer for that is always: "TOO LONG AGO". The initial friction to setup a substantial project using C++ is unfucking bearable. When we started code revamp at work recently, I decided to be a good citizen and decided to incorporate [cpptest](http://cpptest.sourceforge.net/), a unit testing framework in our project. It made me realize how unreasonably complicated Makefiles can be. After 3 hours of peeling away at the complexity I managed to add cpptest to the build dependency of the project. Now time to write a few tests and check it out. I'm thinking "We are almost there". FALSE! Compilation gives me a gazillion error messages that make absolutely no sense. After about 30mins of [StackOverflowing](http://stackoverflow.com/) and Googling, I find out that its not enough to include string.h and map.h in my header files, but I also need to namespace it. Of course there is no indication (not even a hint) of that in the error messages. So I add 'using namespace std' and get past it. Awesome my first test is compiling successfully. Time to run this baby and declare victory. Close! But no cigar. The executable was unable to load the CppTest library during runtime. Argh! I set my LD\_LIBRARY\_PATH env variable and now it's running. But I can't ask everyone in my team to do that, so I have to figure out how to statically link that library. It's already 6pm and I'm hungry. That'll have to wait for another day. TL;DR - C++ and Makefile can burn in a fire of thousand suns. | http://blog.amjith.com/rant-about-c-dependency-hell |
18 | PyCon 2012 Review | <div class="posthaven-post-body"><p>PyCon 2012 was held at Santa Clara, California.</p> <p><strong>Tutorial:</strong></p> <div>I was there on the Thrusday to attend a tutorial called <a href="http://pyvideo.org/video/613/python-epiphanies" target="_blank">Python Epiphanies</a>. The tutorial was educational in understanding some of the inner workings of Python. But I have a hard time trying to figure out how to use the knowledge I gained there. </div> <p></p> <div><strong>Opening Ceremony:</strong></div> <div><strong>We had ROBOTS.</strong></div> <div> <div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[520202]"><div class="posthaven-gallery-chrome"> <div class="posthaven-gallery-info"> <span class="posthaven-gallery-next posthaven-gallery-left">◀</span> <span class="posthaven-gallery-position">1</span> of <span class="posthaven-gallery-total">3</span> <span class="posthaven-gallery-next posthaven-gallery-right">▶</span> </div> </div> <div class="posthaven-gallery-thumb-holder"><div><a href="#"> <img src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892920/ulfstmCYtAi6b09QbOoIDkXlMhE/thumb_P1080277.jpg" class="posthaven-gallery-thumb posthaven-gallery-thumb-0 posthaven-gallery-selected-thumb"> </a><a href="#"> <img src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892921/FRBiAgq0r_Rssy2n0ChjJQaWg7w/thumb_P1080276.jpg" class="posthaven-gallery-thumb posthaven-gallery-thumb-1"> </a><a href="#"> <img src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892922/g__yVqUNT2woJkdvt0O1QwGGhps/thumb_P1080279.jpg" class="posthaven-gallery-thumb posthaven-gallery-thumb-2"> </a></div></div> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892920/ulfstmCYtAi6b09QbOoIDkXlMhE/large_P1080277.jpg" data-posthave… | 1332305760 | [] | PyCon 2012 was held at Santa Clara, California. **Tutorial:** I was there on the Thrusday to attend a tutorial called [Python Epiphanies](http://pyvideo.org/video/613/python-epiphanies). The tutorial was educational in understanding some of the inner workings of Python. But I have a hard time trying to figure out how to use the knowledge I gained there. **Opening Ceremony:** **We had ROBOTS.** ◀ 1 of 3 ▶ [![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892920/ulfstmCYtAi6b09QbOoIDkXlMhE/thumb_P1080277.jpg)](#)[![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892921/FRBiAgq0r_Rssy2n0ChjJQaWg7w/thumb_P1080276.jpg)](#)[![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892922/g__yVqUNT2woJkdvt0O1QwGGhps/thumb_P1080279.jpg)](#) ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892920/ulfstmCYtAi6b09QbOoIDkXlMhE/large_P1080277.jpg) And they were dancing.... how cool was that? It was a splendid opening ceremony. **Socializing:** Thursday evening was bag stuffing. Where we helped out by stuffing the swag bag. I got to work side-by-side some well known figures in the community ([Jesse Noller](https://twitter.com/#!/jessenoller), [Pydanny](http://pydanny.github.com/)). After that I hung out with some [Heroku](http://www.heroku.com/) folks and learned about their awesome work culture. Later that night, Yannick and [Bryan](https://twitter.com/#!/bryanveloso) gave a Pycon newbie orientation. I took their advice and gave a Lightning Talk about bpython (my talk is 10min into the video). I socialized plenty and got a lot of useful contacts from different companies. I got to meet the founders of [Octopart](http://octopart.com), my favorite Electrical Engineering based startups. I also met with [Kenneth Reitz](http://www.kennethreitz.com/) who is famous for his requests library and this awesome talk [Python for Humans](http://python-for-humans.heroku.com/). I was quite thrilled when I first saw Guido at the Lunch hall sitting right next to … | http://blog.amjith.com/pycon-2012-review |
19 | Too Many Classes Too Little Time | <div class="posthaven-post-body"><p>I'm taking a couple of the free online classes offered by Standford. One on <a href="http://ai-class.org">Artifical Intelligence</a> and one on <a href="http://ml-class.org">Machine Learning</a>. </p> <p>I haven't had so much fun since kindergarten. Actually that's not fair, I didn't enjoy kindergarten this much. I'm listening to the classes during my lunch, after work, during weekends. I'm working on my assignment with so much enthusiasm, I dread the day when this class ends. </p> <p>Stanford just announced a slew of new <a href="http://www.hci-class.org/">online</a> classes offered starting in Jan 2012. I was way too excited when I first read the description on them. Now I'm a little sad, becasue I want to take 8 out of the 11 courses that are being offered and I don't have enough time. :(</p> <p>Woe is me. </p> <p>ps: If you are not taking any of these classes you are missing out big time. Please do yourself a favor and sign up. </p></div> | 1321943340 | [] | I'm taking a couple of the free online classes offered by Standford. One on [Artifical Intelligence](http://ai-class.org) and one on [Machine Learning](http://ml-class.org). I haven't had so much fun since kindergarten. Actually that's not fair, I didn't enjoy kindergarten this much. I'm listening to the classes during my lunch, after work, during weekends. I'm working on my assignment with so much enthusiasm, I dread the day when this class ends. Stanford just announced a slew of new [online](http://www.hci-class.org/) classes offered starting in Jan 2012. I was way too excited when I first read the description on them. Now I'm a little sad, becasue I want to take 8 out of the 11 courses that are being offered and I don't have enough time. :( Woe is me. ps: If you are not taking any of these classes you are missing out big time. Please do yourself a favor and sign up. | http://blog.amjith.com/too-many-classes-too-little-time |
20 | Goodbye Utah | <div class="posthaven-post-body"><p>The time has come to part ways. I'm leaving Utah to move to Portland on May 25th 2012. This July would have marked the 10 year anniversary of living in Utah. I can't believe I spent one third of my life so far in Utah. Some of the best memories in my life were formed here.</p> <p><strong>True Love: </strong></p> <p>I met my beautiful wife here in Utah. She kicked my ass in TaeKwonDo, I asked her out, and the rest is history. Happily married for four years with a baby on the way.</p> <p> </p><div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[520193]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image posthaven-medium-only" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892903/QLS16CZgYW9RRKHJpwnk5iJgVHs/large_232323232-fp33-nu3282-384-873-WSNRCG323372-389847nu0mrj.jpeg" data-posthaven-state="processed" data-medium-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892903/QLS16CZgYW9RRKHJpwnk5iJgVHs/medium_232323232-fp33-nu3282-384-873-WSNRCG323372-389847nu0mrj.jpeg" data-medium-width="360" data-medium-height="480" data-large-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892903/QLS16CZgYW9RRKHJpwnk5iJgVHs/large_232323232-fp33-nu3282-384-873-WSNRCG323372-389847nu0mrj.jpeg" data-large-width="360" data-large-height="480" data-thumb-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892903/QLS16CZgYW9RRKHJpwnk5iJgVHs/thumb_232323232-fp33-nu3282-384-873-WSNRCG323372-389847nu0mrj.jpeg" data-thumb-width="200" data-thumb-height="200" data-xlarge-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892903/QLS16CZgYW9RRKHJpwnk5iJgVHs/xlarge_232323232-fp33-nu3282-384-873-WSNRCG323372-389847nu0mrj.jpeg" data-xlarge-width="" data-xlarge-height="" data-orig-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892903/… | 1337844480 | [] | The time has come to part ways. I'm leaving Utah to move to Portland on May 25th 2012. This July would have marked the 10 year anniversary of living in Utah. I can't believe I spent one third of my life so far in Utah. Some of the best memories in my life were formed here. **True Love:** I met my beautiful wife here in Utah. She kicked my ass in TaeKwonDo, I asked her out, and the rest is history. Happily married for four years with a baby on the way. ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892903/QLS16CZgYW9RRKHJpwnk5iJgVHs/large_232323232-fp33-nu3282-384-873-WSNRCG323372-389847nu0mrj.jpeg) ◀ 1 of 2 ▶ [![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892904/RRDsnI2kY7XB5UbB1iaZVq6fia4/thumb_hisa_520.jpg)](#)[![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892905/wIPELrv0bGcu4lExTe5j_rl7KTo/thumb_hisa_459.jpg)](#) ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892904/RRDsnI2kY7XB5UbB1iaZVq6fia4/large_hisa_520.jpg) **First Job:** My first real programming job was with [Delcam](http://featurecam.com/) USA. I still have my first paystub from Delcam. Tom my boss at Delcam is still the best boss I've had so far. ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892906/ETJeZk3ELqjnF-y1nY6dxUO5q3s/large_IMG_4637.JPG) **Higher Education:** University of Utah. So many memories, so many sleepless nights at the computer lab. I still get a nostalgia when I walk through the campus. **Parksvan:** Eight clueless kids from India got together to share accomodation while going to school and ended up sharing the best parts of our life. Although we have all parted ways since our college days, I can't help but feel they are part of my family. ◀ 1 of 2 ▶ [![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892907/jEuYkE2C3stMrAz2j9fHYZQQEWA/thumb_100_1141.JPG)](#)[![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892908/qBQl_xzly_7nV8c6Dz66xipPHro/thumb_100_1167.JP… | http://blog.amjith.com/goodbye-utah |
21 | Picking 'k' items from a list of 'n' - Recursion | <div class="posthaven-post-body"><p>Let me preface this post by saying I suck at recursion. But it never stopped me from trying to master it. Here is my latest (successful) attempt at an algorithm that required recursion. </p> <p><strong>Background: </strong></p> <p>You can safely skip this section if you're not interested in the back story behind why I decided to code this up. </p> <p>I was listening to <a href="http://www.khanacademy.org/">KhanAcademy</a> videos on <a href="http://www.khanacademy.org/#probability">probability</a>. I was particularly intrigued by the combinatorics <a href="http://www.khanacademy.org/video/getting-exactly-two-heads--combinatorics?playlist=Probability">video</a>. The formula to calculate the number of combinations of nCr was simple, but I wanted to print all the possible combinations of nCr. </p> <p><strong>Problem Statement:</strong></p> <p>Given 'ABCD' what are the possible outcomes if you pick 3 letters from it to form a combination without repetition (i.e. 'ABC' is the same as 'BAC'). </p> <p>At first I tried to solve this using an iterative method and gave up pretty quickly. It was clearly designed to be a recursive problem. After 4 hours of breaking my head I finally got a working algorithm using recursion. I was pretty adamant about not looking it up online but I seeked some help from IRC (Thanks <a href="http://www.jtolds.com/">jtolds</a>). </p> <p><strong>Code: </strong></p> <div class="CodeRay"> <div class="code"><pre><span class="keyword">def</span> <span class="function">combo</span>(w, l): lst = [] <span class="keyword">if</span> l < <span class="integer">1</span>: <span class="keyword">return</span> lst <span class="keyword">for</span> i <span class="keyword">in</span> <span class="predefined">range</span>(<span class="predefined">len</span>(w)): <span class="keyword">if</span> l == <span class="integer">1</span>: lst.append(w[i]) <span clas… | 1318913520 | ["programming", "python", "recursion"] | Let me preface this post by saying I suck at recursion. But it never stopped me from trying to master it. Here is my latest (successful) attempt at an algorithm that required recursion. **Background:** You can safely skip this section if you're not interested in the back story behind why I decided to code this up. I was listening to [KhanAcademy](http://www.khanacademy.org/) videos on [probability](http://www.khanacademy.org/#probability). I was particularly intrigued by the combinatorics [video](http://www.khanacademy.org/video/getting-exactly-two-heads--combinatorics?playlist=Probability). The formula to calculate the number of combinations of nCr was simple, but I wanted to print all the possible combinations of nCr. **Problem Statement:** Given 'ABCD' what are the possible outcomes if you pick 3 letters from it to form a combination without repetition (i.e. 'ABC' is the same as 'BAC'). At first I tried to solve this using an iterative method and gave up pretty quickly. It was clearly designed to be a recursive problem. After 4 hours of breaking my head I finally got a working algorithm using recursion. I was pretty adamant about not looking it up online but I seeked some help from IRC (Thanks [jtolds](http://www.jtolds.com/)). **Code:** ``` def combo(w, l): lst = [] if l < 1: return lst for i in range(len(w)): if l == 1: lst.append(w[i]) for c in combo(w[i+1:], l-1): lst.append(w[i] + c) return lst ``` **Output:** ``` >>> combinations.combo('abcde',3) ['abc', 'abd', 'abe', 'acd', 'ace', 'ade', 'bcd', 'bce', 'bde', 'cde'] ``` **Thoughts:** * It helps to think about recursion with the assumption that an answer for step n-1 already exists. * If you are getting partial answers check the condition surrounding the return statement. * Recursion is still not clear (or easy). I have confirmed that this works for bigger data sets and am quite happy with this small victory. | http://blog.amjith.com/picking-k-items-from-a-list-of-n-recursion |
22 | Python Profiling | <div class="posthaven-post-body"><p>I did a presentation at our <a href="http://www.utahpython.org" rel="nofollow">local Python User Group</a> meeting tonight. It was well received, but shorter than I had expected. I should've added a lot more code examples. </p> <p>We talked about usage of cProfile, pstats, runsnakerun and timeit. </p> <p>Here are the slides from the presentations: </p><div class="posthaven-file posthaven-file-document posthaven-file-state-processed" id="posthaven_document_892930" data-box-session-id="d20422d9e8dd46deb88ebae9b43be42d" data-pdf-url="https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892930/cU9Mr_PGkOpAp0Q-ETJe9gX2kk0/profiling.pdf"><object data="https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892930/cU9Mr_PGkOpAp0Q-ETJe9gX2kk0/profiling.pdf" type="application/pdf" width="100%" height="800px"> </object> <a class="posthaven-file-download" download="" href="https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892930/cU9Mr_PGkOpAp0Q-ETJe9gX2kk0/profiling.pdf">Download profiling.pdf</a> </div> <p></p> <p>The slides were done using <a href="http://en.wikipedia.org/wiki/Beamer_(LaTeX)" rel="nofollow">latex-beamer</a>, but I wrote the slides in <a href="http://docutils.sourceforge.net/rst.html" rel="nofollow">reStructuredText</a> and used <a href="http://www.agapow.net/programming/python/rst2beamer" rel="nofollow">rst2beamer</a> to create the tex file which was then converted to pdf using pdflatex. </p> <p>The source code for the slides are available on <a href="https://github.com/amjith/User-Group-Presentations/tree/master/profiling" rel="nofollow">github</a>.</p></div> | 1318567200 | ["programming", "python"] | I did a presentation at our [local Python User Group](http://www.utahpython.org) meeting tonight. It was well received, but shorter than I had expected. I should've added a lot more code examples. We talked about usage of cProfile, pstats, runsnakerun and timeit. Here are the slides from the presentations: [Download profiling.pdf](https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892930/cU9Mr_PGkOpAp0Q-ETJe9gX2kk0/profiling.pdf) The slides were done using [latex-beamer](http://en.wikipedia.org/wiki/Beamer_(LaTeX)), but I wrote the slides in [reStructuredText](http://docutils.sourceforge.net/rst.html) and used [rst2beamer](http://www.agapow.net/programming/python/rst2beamer) to create the tex file which was then converted to pdf using pdflatex. The source code for the slides are available on [github](https://github.com/amjith/User-Group-Presentations/tree/master/profiling). | http://blog.amjith.com/python-profiling |
23 | Social sites and emotional ups and downs | <div class="posthaven-post-body"><p>Note: I do NOT suffer from depression. I'm not trying to make light of the serious condition that is depression.</p><p>I just got back from PyCon. I had a booth for <a href="https://www.dbcli.com/">DBCLI</a> (OpenSource project), I gave a <a href="https://devpen.io/TBD">talk about my work</a> at Netflix, I manned the job fair table and participated in the sprints. People were coming up to me and showering with praise about my OpenSource project and my talk. It is like getting a lifetime's worth of positive feedback thrown at me in a span of three days. It was exhilarating.</p><p>I got back home and hugged the kids and my wife. My two kids obviously missed me and they clung to me for about 20 minutes before reverting back to being mama's boys. I really don't blame them for preferring their mom over me. My wife is just a better human being than me and the kids just know it.</p><p>This is where the hint of a mild depression sets in. I start to wonder why my wife and kids aren't constantly showering me with praise. I just walked from the bedroom to the kitchen and not a single compliment was thrown at me. What is going on? In a couple of days, the trickle of online pampering (via Twitter) starts to taper off. When you refresh twitter there are no more new notifications.</p><p>What did I do to deserve this shunning? Why do people hate me? These are questions that run through my mind before I realize I've become an insufferable spoiled brat.</p><p>It is alarming how quickly my brain got accustomed to being treated like a "celebrity". I now understand why real celebrities often suffer from depression. They live through this high and low every single day.</p><p>I am so glad I don't have to deal with this emotional roller coaster every day. I shudder at the thought of living in a world where I'm constantly praised for doing even the most mundane things in life. Where everyday activities are treated as accomplishments and complimented as such.</p><p>Having… | 1528699308 | [] | Note: I do NOT suffer from depression. I'm not trying to make light of the serious condition that is depression. I just got back from PyCon. I had a booth for [DBCLI](https://www.dbcli.com/) (OpenSource project), I gave a [talk about my work](https://devpen.io/TBD) at Netflix, I manned the job fair table and participated in the sprints. People were coming up to me and showering with praise about my OpenSource project and my talk. It is like getting a lifetime's worth of positive feedback thrown at me in a span of three days. It was exhilarating. I got back home and hugged the kids and my wife. My two kids obviously missed me and they clung to me for about 20 minutes before reverting back to being mama's boys. I really don't blame them for preferring their mom over me. My wife is just a better human being than me and the kids just know it. This is where the hint of a mild depression sets in. I start to wonder why my wife and kids aren't constantly showering me with praise. I just walked from the bedroom to the kitchen and not a single compliment was thrown at me. What is going on? In a couple of days, the trickle of online pampering (via Twitter) starts to taper off. When you refresh twitter there are no more new notifications. What did I do to deserve this shunning? Why do people hate me? These are questions that run through my mind before I realize I've become an insufferable spoiled brat. It is alarming how quickly my brain got accustomed to being treated like a "celebrity". I now understand why real celebrities often suffer from depression. They live through this high and low every single day. I am so glad I don't have to deal with this emotional roller coaster every day. I shudder at the thought of living in a world where I'm constantly praised for doing even the most mundane things in life. Where everyday activities are treated as accomplishments and complimented as such. Having 18 friends compliment my breakfast. Or 23 friends fawn over a picture of some cat. Not just any old compliment but a compl… | http://blog.amjith.com/social-sites-and-emotional-ups-and-downs |
24 | Productive Meter | <div class="posthaven-post-body"><p>A few weeks ago I decided that I should suck it up and start learning how to develop for the web. After asking around, my faithful community brethren, I decided to learn Django from its <a href="https://docs.djangoproject.com/en/1.3/intro/tutorial01/">docs</a>. </p> <p>::Django documentation is awesome::</p> <p>Around this time I came across this post about <a href="http://www.mattgreer.org/post/2fiveam">Waking up at 5am to code</a>. I tried it a few times and it worked wonders. I've been working on a small project that can keep track of my productivity on the computer. The concept is really simple, just log the window that is on top and find a way to display that data in a meaningful way. </p> <p>Today's 5am session got me to a milestone on my project. I am finally able to visaulize the time I spend using a decent looking graph. Which is a huge milestone for someone who learned how to display html tables 3 weeks ago.</p> <p><strong>Tools:</strong></p> <ul> <li> <a href="https://www.djangoproject.com/">Django</a> for backend</li> <li><a href="http://www.sqlite.org/">Sqlite</a></li> <li> <a href="http://haystacksearch.org/">Haystack/Solr</a> - search backend for Django</li> <li> <a href="http://fancybox.net/">FancyBox</a> - jquery plugin</li> <li> <a href="http://code.google.com/p/flot/">flot</a> - jquery plotting lib</li> <li> <a href="http://twitter.github.com/bootstrap/">Bootstrap</a> - html/css</li> </ul><p>A huge thanks to my irc friends and random geeks who wrote awesome blog posts and SO answers on every problem I encountered.</p> <p>I will be open-sourcing the app pretty soon. Stay tuned.</p> <p> </p><div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[520207]"><div class="posthaven-gallery-chrome"> <div class="posthaven-gallery-info"> <span class="posthaven-gallery-next posthaven-gallery-left">◀</span> <span class="posthaven-gallery-position">1</span> of <span class="posthaven-gallery-total">2</sp… | 1328854149 | ["django", "opensource", "programming", "python"] | A few weeks ago I decided that I should suck it up and start learning how to develop for the web. After asking around, my faithful community brethren, I decided to learn Django from its [docs](https://docs.djangoproject.com/en/1.3/intro/tutorial01/). ::Django documentation is awesome:: Around this time I came across this post about [Waking up at 5am to code](http://www.mattgreer.org/post/2fiveam). I tried it a few times and it worked wonders. I've been working on a small project that can keep track of my productivity on the computer. The concept is really simple, just log the window that is on top and find a way to display that data in a meaningful way. Today's 5am session got me to a milestone on my project. I am finally able to visaulize the time I spend using a decent looking graph. Which is a huge milestone for someone who learned how to display html tables 3 weeks ago. **Tools:** * [Django](https://www.djangoproject.com/) for backend * [Sqlite](http://www.sqlite.org/) * [Haystack/Solr](http://haystacksearch.org/) - search backend for Django * [FancyBox](http://fancybox.net/) - jquery plugin * [flot](http://code.google.com/p/flot/) - jquery plotting lib * [Bootstrap](http://twitter.github.com/bootstrap/) - html/css A huge thanks to my irc friends and random geeks who wrote awesome blog posts and SO answers on every problem I encountered. I will be open-sourcing the app pretty soon. Stay tuned. ◀ 1 of 2 ▶ [![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892926/4_eQKjkTgYjmyOrBQVE-NmJ1XSA/thumb_productive_meter_screenshot.png)](#)[![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892927/twaBYMZbo-aVSaXUtyS7mZDrRhY/thumb_productive_meter_screenshot1.png)](#) ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892926/4_eQKjkTgYjmyOrBQVE-NmJ1XSA/large_productive_meter_screenshot.png) | http://blog.amjith.com/100506320 |
25 | Launching pgcli | <div class="posthaven-post-body"><p>I've been developing pgcli for a few months now. </p><p>It is now finally live <a href="http://pgcli.com">http://pgcli.com</a>. </p><p>It all started when <a href="https://github.com/jonathanslenders/" target="_blank" title="Link: https://github.com/jonathanslenders/">Jonathan Slenders</a> sent me a link to his side-project called <a href="https://github.com/jonathanslenders/python-prompt-toolkit" target="_blank">python-prompt-toolkit</a>. </p><p>I started playing around with it to write some toy programs. Then I wrote a tutorial for how to get started with <a href="https://github.com/jonathanslenders/python-prompt-toolkit/tree/master/examples/tutorial" target="_blank">prompt_toolkit</a> <a href="https://github.com/jonathanslenders/python-prompt-toolkit/tree/master/examples/tutorial" target="_blank" title="Link: https://github.com/jonathanslenders/python-prompt-toolkit/tree/master/examples/tutorial">https://github.com/jonathanslenders/python-prompt-toolkit/tree/master/examples/tutorial</a>. </p><p>Finally I started writing something more substantial to scratch my own itch. I was dealing with Postgres databases a lot at that time. The default postgres client 'psql' is a great tool, but it lacked auto-completion as I type and it was quite bland (no syntax highlighting). So I decided to take this as my opportunity to write an alternate. </p><p>Thus the creatively named project 'pgcli' was born.</p><h3>Details about pgcli.com:</h3><p>It is built using <a href="https://pypi.python.org/pypi/pelican/" target="_blank">pelican</a> a static site generator written in Python. </p><p>It is hosted by Github pages. </p><p>The content is written using RestructuredText.</p><h3>Inspiration:</h3><p>The design inspiration for the tool comes from my favorite python interpreter <a href="http://www.bpython-interpreter.org/" target="_blank">bpython</a>.</p></div> | 1420574400 | ["python"] | I've been developing pgcli for a few months now. It is now finally live <http://pgcli.com>. It all started when [Jonathan Slenders](https://github.com/jonathanslenders/ "Link: https://github.com/jonathanslenders/") sent me a link to his side-project called [python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit). I started playing around with it to write some toy programs. Then I wrote a tutorial for how to get started with [prompt\_toolkit](https://github.com/jonathanslenders/python-prompt-toolkit/tree/master/examples/tutorial) [https://github.com/jonathanslenders/python-prompt-toolkit/tree/master/examples/tutorial](https://github.com/jonathanslenders/python-prompt-toolkit/tree/master/examples/tutorial "Link: https://github.com/jonathanslenders/python-prompt-toolkit/tree/master/examples/tutorial"). Finally I started writing something more substantial to scratch my own itch. I was dealing with Postgres databases a lot at that time. The default postgres client 'psql' is a great tool, but it lacked auto-completion as I type and it was quite bland (no syntax highlighting). So I decided to take this as my opportunity to write an alternate. Thus the creatively named project 'pgcli' was born. ### Details about pgcli.com: It is built using [pelican](https://pypi.python.org/pypi/pelican/) a static site generator written in Python. It is hosted by Github pages. The content is written using RestructuredText. ### Inspiration: The design inspiration for the tool comes from my favorite python interpreter [bpython](http://www.bpython-interpreter.org/). | http://blog.amjith.com/launching-pgcli |
26 | Programming - A Gateway Drug to Math | <div class="posthaven-post-body"> <div> <p>I decided to try my hand at the Stanford's <a href="http://www.ai-class.com/">AI Class</a>. The pre-requisites mentioned Probability and Linear Algebra. So I started watching Probability videos on <a href="http://www.khanacademy.org/#probability">KhanAcademy</a>. </p> <p>Sal Khan was teaching how to find the probability of 2 heads when you toss a coin 5 times.</p> <p>A classic nCk problem: </p> <p><img title="This is the rendered form of the equation. You can not edit this directly. Right click will give you the option to save the image, and in most browsers you can drag the image onto your desktop or another program." src="http://latex.codecogs.com/gif.latex?%5Csmall%20_nC_k%20=%20%5Cfrac%7Bn!%7D%7Bk!(n-k)!%7D" alt=""></p> </div> <p>The probability of getting 2 heads while tossing a coin 5 times is:</p> <div> <div><img title="This is the rendered form of the equation. You can not edit this directly. Right click will give you the option to save the image, and in most browsers you can drag the image onto your desktop or another program." src="http://latex.codecogs.com/gif.latex?P(2)%20=%20%5Cfrac%7B%7B_5C_2%7D%7D%7B2%5E5%7D" alt=""></div> </div> <div>But I wanted to find out the probability of getting at least 2 heads when I toss 5 coins.</div> <div>Its really simple. All I had to do is P(2) + P(3) + P(4) + P(5). </div> <div>But then computing<img src="http://latex.codecogs.com/gif.latex?_nC_k" alt="">by hand (or a calculator) was painfully slow, let alone do it 4 times.</div> <div>So I wrote two little functions in Python that will calculate factorial (yes I reinvented the wheel) and<img src="http://latex.codecogs.com/gif.latex?_nC_k" alt=""> </div> <div><strong>Nothing teaches you math faster than trying to write a program to do the math for you. </strong></div> <div>Writing a program is the same as teaching the computer how to do a certain task. The only way you can teach someone to do a task is to become a master at doing… | 1317792660 | ["math", "programming"] | I decided to try my hand at the Stanford's [AI Class](http://www.ai-class.com/). The pre-requisites mentioned Probability and Linear Algebra. So I started watching Probability videos on [KhanAcademy](http://www.khanacademy.org/#probability). Sal Khan was teaching how to find the probability of 2 heads when you toss a coin 5 times. A classic nCk problem: ![](http://latex.codecogs.com/gif.latex?%5Csmall%20_nC_k%20=%20%5Cfrac%7Bn!%7D%7Bk!(n-k)!%7D "This is the rendered form of the equation. You can not edit this directly. Right click will give you the option to save the image, and in most browsers you can drag the image onto your desktop or another program.") The probability of getting 2 heads while tossing a coin 5 times is: ![](http://latex.codecogs.com/gif.latex?P(2)%20=%20%5Cfrac%7B%7B_5C_2%7D%7D%7B2%5E5%7D "This is the rendered form of the equation. You can not edit this directly. Right click will give you the option to save the image, and in most browsers you can drag the image onto your desktop or another program.") But I wanted to find out the probability of getting at least 2 heads when I toss 5 coins. Its really simple. All I had to do is P(2) + P(3) + P(4) + P(5). But then computing![](http://latex.codecogs.com/gif.latex?_nC_k)by hand (or a calculator) was painfully slow, let alone do it 4 times. So I wrote two little functions in Python that will calculate factorial (yes I reinvented the wheel) and![](http://latex.codecogs.com/gif.latex?_nC_k) **Nothing teaches you math faster than trying to write a program to do the math for you.** Writing a program is the same as teaching the computer how to do a certain task. The only way you can teach someone to do a task is to become a master at doing that task yourself. Bonus: It also teaches you corner cases like 0! = 1 and ![](http://latex.codecogs.com/gif.latex?%5Csmall%20_5C_5%20=%201) that you wouldn't think of otherwise. | http://blog.amjith.com/programming-a-gateway-drug-to-math |
27 | Conversations with a 2yo | <div class="posthaven-post-body"><p>Yoshi: Let me cut that chocolate bar in half. </p><p>Sempi: Why?</p><p>Yoshi: Because it is too much.</p><p>Sempi: I want too much. </p><p><br></p><p><br></p></div> | 1439397916 | ["personal", "2yo", "sempi"] | Yoshi: Let me cut that chocolate bar in half. Sempi: Why? Yoshi: Because it is too much. Sempi: I want too much. | http://blog.amjith.com/conversations-with-a-2yo-1 |
28 | Truly wonderful, the mind of a child is | <div class="posthaven-post-body"><p>Vian is quite eloquent these days. But he still can't pronounce the sounds 'Ka' and 'Ga'. Instead, he replaces them with the sounds 'Ta' and 'Da' respectively.</p><p>Here are some choice selections: </p><p><i>Vian:</i> Appa, where is my tar (car)?</p><p><i>Vian: </i>Tan I have a tootie (cookie)? </p><p><i>Vian:</i> Amma, gone to yoda (yoga) class. </p><p><br></p><p>I always had a nagging suspicion that my wife is a Jedi. The way she can change my mind in one sentence....</p></div> | 1534740470 | ["personal", "2yo", "vian"] | Vian is quite eloquent these days. But he still can't pronounce the sounds 'Ka' and 'Ga'. Instead, he replaces them with the sounds 'Ta' and 'Da' respectively. Here are some choice selections: *Vian:* Appa, where is my tar (car)? *Vian:* Tan I have a tootie (cookie)? *Vian:* Amma, gone to yoda (yoga) class. I always had a nagging suspicion that my wife is a Jedi. The way she can change my mind in one sentence.... | http://blog.amjith.com/truly-wonderful-the-mind-of-a-child-is |
29 | What is your superpower? | <div class="posthaven-post-body"><p>Sempi is really into superheroes and police. The other day I was walking him to school and he tells me, </p><p>Sempi: Appa, can I tell you a secret? </p><p>Me: Yeah. </p><p>Sempi (whispers): My secret identity is (redacted). </p><p>Me: Wow, really? Why didn't you tell me sooner, I could have used your powers to crush the boxes in the recycling bins.</p><p>Sempi: You can't tell anyone. Well, maybe just amma, but no one else. </p><p>Me: What about Vian? </p><p>Sempi: He's too young, he might tell someone. Maybe when he grows up you can tell him. </p><p>Me: Do you think when he grows up he'll also get superpowers? </p><p>Sempi: Yeah. Even you have superpowers appa. You can be police.</p><p>Me: Really?</p><p>Sempi: Yeah, you can be police who stays indoors and we'll contact you for instructions when we're fighting bad guys. You know, since you're good with computers. </p><p><br></p><p>*sniff* My son thinks I'm good with computers. It is the highest compliment I've received in my life.</p></div> | 1539232864 | ["5yo", "sempi"] | Sempi is really into superheroes and police. The other day I was walking him to school and he tells me, Sempi: Appa, can I tell you a secret? Me: Yeah. Sempi (whispers): My secret identity is (redacted). Me: Wow, really? Why didn't you tell me sooner, I could have used your powers to crush the boxes in the recycling bins. Sempi: You can't tell anyone. Well, maybe just amma, but no one else. Me: What about Vian? Sempi: He's too young, he might tell someone. Maybe when he grows up you can tell him. Me: Do you think when he grows up he'll also get superpowers? Sempi: Yeah. Even you have superpowers appa. You can be police. Me: Really? Sempi: Yeah, you can be police who stays indoors and we'll contact you for instructions when we're fighting bad guys. You know, since you're good with computers. \*sniff\* My son thinks I'm good with computers. It is the highest compliment I've received in my life. | http://blog.amjith.com/what-is-your-superpower |
30 | Conversations with a 2 year old - Part 1 | <div class="posthaven-post-body"><p>Me: Sempi, do you like appa? </p><p>Sempi: Yes.</p><p>Me: How much?</p><p>Sempi: Too much!</p></div> | 1425492600 | ["personal", "2yo", "sempi"] | Me: Sempi, do you like appa? Sempi: Yes. Me: How much? Sempi: Too much! | http://blog.amjith.com/conversations-with-a-2-year-old-part-1 |
31 | Kickstarter: mysql-cli | <div class="posthaven-post-body"><p>I'm starting a project called <a href="http://mysql-cli.com">mysql-cli</a>.</p><p><a href="http://mysql-cli.com">mysql-cli</a> will be a command line client for MySQL, with auto-completion and syntax highlighting. An equivalent of <a href="http://pgcli.com">pgcli</a> for MySQL database.</p><p>I'm raising funds for the project through <a href="http://mysql-cli.com" title="Link: http://mysql-cli.com">kickstarter</a>. The goal is to compensate for the development time and resources (hosting, testing etc) as well as motivate me to keep going.</p><p><iframe src="https://player.vimeo.com/video/124121398" width="800" height="450" frameborder="0" title="Kickstarter - mysql-cli" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" style="height: 450px;"></iframe></p><p>When I launched <a href="http://pgcli.com">pgcli</a> earlier this year I had high hopes for it. I anticipated that I might reach a hundred users and even a couple of contributions. I announced it on <a href="https://twitter.com/amjithr/status/552491986255896576" title="Link: https://twitter.com/amjithr/status/552491986255896576">Twitter</a> and HackerNews and it took about an hour to reach 100 stars. By the second day it was a top trending repo in all of Github. Right now it is hovering near the 1600 mark for the number of stars, with more than 70 pull requests (merged). </p><p>During the first week of launch, I slept about 3 hours each night because the pull requests and issues came flooding. I made a personal resolve to answer every communique within 24 hours. This meant answering personal emails, responding to issues filed, reviewing pull requests etc. I vowed to be <a href="http://pgcli.com/about" title="Link: http://pgcli.com/about">polite</a> and respectful to my users and contributors and I've had nothing but pleasant interactions with them. </p><p>My hope is to provide the same level of dedication and support to <a href="http://mysql-cli.com" title="Link: http://my… | 1428281669 | [] | I'm starting a project called [mysql-cli](http://mysql-cli.com). [mysql-cli](http://mysql-cli.com) will be a command line client for MySQL, with auto-completion and syntax highlighting. An equivalent of [pgcli](http://pgcli.com) for MySQL database. I'm raising funds for the project through [kickstarter](http://mysql-cli.com "Link: http://mysql-cli.com"). The goal is to compensate for the development time and resources (hosting, testing etc) as well as motivate me to keep going. When I launched [pgcli](http://pgcli.com) earlier this year I had high hopes for it. I anticipated that I might reach a hundred users and even a couple of contributions. I announced it on [Twitter](https://twitter.com/amjithr/status/552491986255896576 "Link: https://twitter.com/amjithr/status/552491986255896576") and HackerNews and it took about an hour to reach 100 stars. By the second day it was a top trending repo in all of Github. Right now it is hovering near the 1600 mark for the number of stars, with more than 70 pull requests (merged). During the first week of launch, I slept about 3 hours each night because the pull requests and issues came flooding. I made a personal resolve to answer every communique within 24 hours. This meant answering personal emails, responding to issues filed, reviewing pull requests etc. I vowed to be [polite](http://pgcli.com/about "Link: http://pgcli.com/about") and respectful to my users and contributors and I've had nothing but pleasant interactions with them. My hope is to provide the same level of dedication and support to [mysql-cli](http://mysql-cli.com "Link: http://mysql-cli.com"). There is definitely a need for it, since every time I use the default MySQL client I want to scream obscenities at my computer and I can't be the only one. :) The plan is to launch [mysql-cli](http://mysql-cli.com "Link: http://mysql-cli.com") in July 2015 and open up the repo to public. If you want to get involved sooner, please back the project on [kickstarter](http://mysql-cli.com) and I'll add you to the e… | http://blog.amjith.com/kickstarter-mysql-cli |
32 | FuzzyFinder - in 10 lines of Python | <div class="posthaven-post-body"><h1>Introduction:</h1><p>FuzzyFinder is a popular feature available in decent editors to open files. The idea is to start typing partial strings from the full path and the list of suggestions will be narrowed down to match the desired file. </p><p>Examples: </p><p>Vim (Ctrl-P)</p><p> </p><div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[894859]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image posthaven-medium-only" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1468562/v2hh-J443fIzsstdfU5cc_jszb8/large_vim-ctrl-p.gif" data-posthaven-state="processed" data-medium-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1468562/v2hh-J443fIzsstdfU5cc_jszb8/medium_vim-ctrl-p.gif" data-medium-width="648" data-medium-height="478" data-large-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1468562/v2hh-J443fIzsstdfU5cc_jszb8/large_vim-ctrl-p.gif" data-large-width="648" data-large-height="478" data-thumb-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1468562/v2hh-J443fIzsstdfU5cc_jszb8/thumb_vim-ctrl-p.jpg" data-thumb-width="200" data-thumb-height="200" data-xlarge-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1468562/v2hh-J443fIzsstdfU5cc_jszb8/xlarge_vim-ctrl-p.gif" data-xlarge-width="648" data-xlarge-height="478" data-orig-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1468562/v2hh-J443fIzsstdfU5cc_jszb8/vim-ctrl-p.gif" data-orig-width="648" data-orig-height="478" data-posthaven-id="1468562"> </p> </div> </div> <p></p><p>Sublime Text (Cmd-P)</p><p> </p><div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[894860]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-… | 1434985204 | ["python", "programming"] | Introduction: ============= FuzzyFinder is a popular feature available in decent editors to open files. The idea is to start typing partial strings from the full path and the list of suggestions will be narrowed down to match the desired file. Examples: Vim (Ctrl-P) ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1468562/v2hh-J443fIzsstdfU5cc_jszb8/large_vim-ctrl-p.gif) Sublime Text (Cmd-P) ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1468563/LIitkIbiuCIz5cZH27rLJ0qGkgA/large_subl-cmd-p.gif) This is an extremely useful feature and it's quite easy to implement. Problem Statement: ================== We have a collection of strings (filenames). We're trying to filter down that collection based on user input. The user input can be partial strings from the filename. Let's walk this through with an example. Here is a collection of filenames: This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. [Learn more about bidirectional Unicode characters](https://github.co/hiddenchars) [Show hidden characters]({{ revealButtonHref }}) | | | | --- | --- | | | >>> collection = ['django\_migrations.py', | | | 'django\_admin\_log.py', | | | 'main\_generator.py', | | | 'migrations.py', | | | 'api\_user.doc', | | | 'user\_group.doc', | | | 'accounts.txt', | | | ] | [view raw](https://gist.github.com/amjith/f0d4fa57e6e47d0e1e9c/raw/67138107e3f87991cc006b73ecc826d618f7842c/file_list.py) [file\_list.py](https://gist.github.com/amjith/f0d4fa57e6e47d0e1e9c#file-file_list-py) hosted with ❤ by [GitHub](https://github.com) When the user types 'djm' we are supposed to match '**dj**ango\_**m**igrations.py' and '**dj**ango\_ad**m**in\_log.py'. The simplest route to achieve this is to use regular expressions. Solutions: ========== ### Naive Regex Matching: Convert 'djm' into 'd.\*j.\*m… | http://blog.amjith.com/fuzzyfinder-in-10-lines-of-python |
33 | It starts early | <div class="posthaven-post-body"><p>Yoshi was washing her face in the bathroom while Vian was playing with the bathroom scale.</p><p>Yoshi: Why is it upside down?</p><p>Vian: Appaaaa</p><p>Yoshi: Appa did it? </p><p>Vian: Appaaa</p><p>Yoshi: oh, appa did it </p><p>Vian: Appaaa Appaaa</p><p>Yoshi: no Vian, you did it </p><p>Vian: (silence) <br></p><p>All of this happened while I was at work. Appa means dad in Tamil.</p></div> | 1507914581 | ["personal", "1yo", "vian"] | Yoshi was washing her face in the bathroom while Vian was playing with the bathroom scale. Yoshi: Why is it upside down? Vian: Appaaaa Yoshi: Appa did it? Vian: Appaaa Yoshi: oh, appa did it Vian: Appaaa Appaaa Yoshi: no Vian, you did it Vian: (silence) All of this happened while I was at work. Appa means dad in Tamil. | http://blog.amjith.com/it-starts-early |
34 | Conversations with a 1 yo | <div class="posthaven-post-body"><p>Vian has more than a few words in his vocabulary now and he's not afraid to show off.</p><p>-----</p><p>I'm having breakfast with Vian. </p><p>We hear the bathroom flush. </p><p>Vian gets all animated and yells "Poop!" and points to the restroom.</p><p>-----</p><p>Another day, the same setup. I'm having breakfast with Vian.<br></p><p>Yoshi joins us with a cup of tea. </p><p>Vian points to the steam rising from the cup and yells "HOT". </p><p>Yoshi acknowledges, yes. It is hot tea. </p><p>Vian: "Hot Tea" (sounds more like hottie). </p><p>Me: Yes Vian, you're a hottie. </p><p>Vian (yells): NO!</p><p>Me: You're not a hottie?</p><p>Vian: Amma hottie. </p><p>Who am I to argue. ;)</p><p><br></p></div> | 1521610404 | ["personal", "1yo", "vian"] | Vian has more than a few words in his vocabulary now and he's not afraid to show off. ----- I'm having breakfast with Vian. We hear the bathroom flush. Vian gets all animated and yells "Poop!" and points to the restroom. ----- Another day, the same setup. I'm having breakfast with Vian. Yoshi joins us with a cup of tea. Vian points to the steam rising from the cup and yells "HOT". Yoshi acknowledges, yes. It is hot tea. Vian: "Hot Tea" (sounds more like hottie). Me: Yes Vian, you're a hottie. Vian (yells): NO! Me: You're not a hottie? Vian: Amma hottie. Who am I to argue. ;) | http://blog.amjith.com/conversations-with-a-1-yo |
35 | Shenanigans | <div class="posthaven-post-body"><p>Conversation with Sempi this morning. </p><p>Me: I'm going to finish making the fried rice and then we can do our usual shenanigans. What do you say? </p><p>Sempi: Yeah, you finish the fried rice and then we'll throw it in our mouths.</p><p></p><p>It was a wonderful morning. :)</p></div> | 1507571850 | ["4yo", "sempi"] | Conversation with Sempi this morning. Me: I'm going to finish making the fried rice and then we can do our usual shenanigans. What do you say? Sempi: Yeah, you finish the fried rice and then we'll throw it in our mouths. It was a wonderful morning. :) | http://blog.amjith.com/shenanigans |
36 | Life hack of a 5 yo | <div class="posthaven-post-body"><p>When I drop off Sempi at school, I walk him to the front desk where they have name badges for the kids arranged in random order. I ask Sempi to pick out his badge while I sign the sign-in sheet. This is my way of training him to recognize his name.</p><p>This morning he told me, "Appa, do you see how the safety pin is attached sideways to my badge? I did that yesterday so I can find my badge easily in the mornings". </p><p>#proud-papa</p></div> | 1508522927 | ["personal", "5yo", "sempi"] | When I drop off Sempi at school, I walk him to the front desk where they have name badges for the kids arranged in random order. I ask Sempi to pick out his badge while I sign the sign-in sheet. This is my way of training him to recognize his name. This morning he told me, "Appa, do you see how the safety pin is attached sideways to my badge? I did that yesterday so I can find my badge easily in the mornings". #proud-papa | http://blog.amjith.com/life-hack-of-a-5-yo |
37 | git open - A small git hack | <div class="posthaven-post-body"><p>You can add a git sub-command by defining a new alias in your ~/.gitconfig file as follows:<br></p><p><script src="https://gist.github.com/amjith/fbd715b4f0e57ef4f38fa302b01b9948.js"></script><link rel="stylesheet" href="https://github.githubassets.com/assets/gist-embed-cdd2b47f37c5.css"></p><div id="gist87206742" class="gist"> <div class="gist-file" translate="no"> <div class="gist-data"> <div class="js-gist-file-update-container js-task-list-container file-box"> <div id="file-gitconfig" class="file my-2"> <div itemprop="text" class="Box-body p-0 blob-wrapper data type-text "> <div class="js-check-bidi js-blob-code-container blob-code-content"> <template class="js-file-alert-template"> <div data-view-component="true" class="flash flash-warn flash-full d-flex flex-items-center"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert"> <path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path> </svg> <span> This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. <a href="https://github.co/hiddenchars" target="_blank">Learn more about bidirectional Unicode characters</a> </span> <div data-view-component="true" class="flash-action"> <a href="{{ revealButtonHref }}" data-view-component="true" class="btn-sm btn"> Show hidden characters </a> </div> </div></template> <template class="js-line-alert-template"> <span aria-label="This line has hidden Unicode characters" data-view-component="true" class="line-alert t… | 1519182574 | ["git", "programming"] | You can add a git sub-command by defining a new alias in your ~/.gitconfig file as follows: This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. [Learn more about bidirectional Unicode characters](https://github.co/hiddenchars) [Show hidden characters]({{ revealButtonHref }}) | | | | --- | --- | | | [alias] | | | open = !vim `git-open.sh` | [view raw](https://gist.github.com/amjith/fbd715b4f0e57ef4f38fa302b01b9948/raw/237c5193e173f6d2f9e9e224e6252a5ba504ab3e/gitconfig) [gitconfig](https://gist.github.com/amjith/fbd715b4f0e57ef4f38fa302b01b9948#file-gitconfig) hosted with ❤ by [GitHub](https://github.com) The git open defined in the ~/.gitconfig is mapped to a shell script called git-open.sh. This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. [Learn more about bidirectional Unicode characters](https://github.co/hiddenchars) [Show hidden characters]({{ revealButtonHref }}) | | | | --- | --- | | | #!/bin/bash | | | | | | dirty=`git status --porcelain -uno | sed s/^...//` | | | last\_modified=`git show --pretty="format:" --name-only HEAD` | | | | | | if [ -n "$dirty" ]; then | | | echo $dirty | | | else | | | echo $last\_modified | | | fi | [view raw](https://gist.github.com/amjith/c8179e589f84b16894aae962d2fb0e39/raw/240a91ac5c1f93854fad37bc27834f7c9e971bd6/git-open.sh) [git-open.sh](https://gist.github.com/amjith/c8179e589f84b16894aae962d2fb0e39#file-git-open-sh) hosted with ❤ by [GitHub](https://github.com) This bash script does two things: 1. It tries to detect if there are any files with uncommitted changes in the current repo and prints out the filenames. 2. If the repo doesn't have any uncommitted files, it'll print … | http://blog.amjith.com/git-open-a-small-git-hack |
38 | New and Improved | <div class="posthaven-post-body"><p>Vian is eating dates that I bought from the Indian store. He seems to be a fan. I take another date out of the package for myself. Vian intercepts my new date even though his mouth is full. I'm curious to see his next action. He takes the old date out of his mouth and shoves it into my mouth and then proceeds to eat his new one. </p></div> | 1501102564 | ["1yo", "vian", "personal"] | Vian is eating dates that I bought from the Indian store. He seems to be a fan. I take another date out of the package for myself. Vian intercepts my new date even though his mouth is full. I'm curious to see his next action. He takes the old date out of his mouth and shoves it into my mouth and then proceeds to eat his new one. | http://blog.amjith.com/new-and-improved |
39 | Tugging at Heartstrings | <div class="posthaven-post-body"><p>We're all having dinner as a family.</p><p>Sempi is complaining about the food. He eats a little, here and there. Yoshi warns him to eat well or he might get hungry later. He doesn't pay any attention. </p><p>Dinner is over and he's ready for bed. Yoshi is reading him a story. Sempi declares he's hungry now.</p><p>Yoshi: You should have eaten well when we were all having dinner.</p><p>Sempi: I'm hungry. </p><p>Yoshi: It's not dinner time. We just brushed your teeth. Go to sleep Sempi.</p><p>Sempi: I don't know why you're making me starve.</p><p>-----</p><p>Naturally, he's now out of the bedroom eating an orange. <br></p><p>The boy just has a way with words. </p></div> | 1494817933 | ["personal", "4yo", "sempi"] | We're all having dinner as a family. Sempi is complaining about the food. He eats a little, here and there. Yoshi warns him to eat well or he might get hungry later. He doesn't pay any attention. Dinner is over and he's ready for bed. Yoshi is reading him a story. Sempi declares he's hungry now. Yoshi: You should have eaten well when we were all having dinner. Sempi: I'm hungry. Yoshi: It's not dinner time. We just brushed your teeth. Go to sleep Sempi. Sempi: I don't know why you're making me starve. ----- Naturally, he's now out of the bedroom eating an orange. The boy just has a way with words. | http://blog.amjith.com/tugging-at-heartstrings |
40 | Eloquence | <div class="posthaven-post-body"><p>My younger son (16 months) can't speak any words yet but he has no problems expressing himself by pointing and grunting. When he's hungry he whines and points to the pantry. When he wants a specific fruit out of the fridge he will reject all the other ones with a head shake and sometimes a shove until I offer him the right fruit. </p><p>This morning I witnessed him do a gesture that can only be construed as "Look ma no hands". We were at the coffee shop and he was standing on his chair and leaning against the table and taking bites out his muffin. Suddenly he realized he wasn't holding onto the <b></b><b></b><b></b><b></b><b></b>table but instead using both hands to grab onto his muffin. So he put his muffin down extended out his arms while leaning against the table and started shouting "Ah, ah, ah, eh?". He was quite pleased with his accomplishment. He proceeded to show off his newly learned skill a few more times for good measure.</p><p>Words are but a hindrance to effective communication. </p><p><br></p></div> | 1505675010 | ["1yo", "vian"] | My younger son (16 months) can't speak any words yet but he has no problems expressing himself by pointing and grunting. When he's hungry he whines and points to the pantry. When he wants a specific fruit out of the fridge he will reject all the other ones with a head shake and sometimes a shove until I offer him the right fruit. This morning I witnessed him do a gesture that can only be construed as "Look ma no hands". We were at the coffee shop and he was standing on his chair and leaning against the table and taking bites out his muffin. Suddenly he realized he wasn't holding onto the ********************table but instead using both hands to grab onto his muffin. So he put his muffin down extended out his arms while leaning against the table and started shouting "Ah, ah, ah, eh?". He was quite pleased with his accomplishment. He proceeded to show off his newly learned skill a few more times for good measure. Words are but a hindrance to effective communication. | http://blog.amjith.com/eloquence |
41 | Classical Music - Getting Started | <div class="posthaven-post-body"><p>I started listening to classical music in my late 20s. Violin pieces are my favorite. I started with classical because I needed music without words while I programmed. Nowadays I listen to it for the pure joy of listening. </p><p>I got started with Vivaldi's Four Seasons. I thought that was the best piece of music ever conceived by humans. I used to argue with my wife (a music major) about how Vivaldi was better than Tchaikovsky. I was mostly naive and a little bit arrogant. She mostly shook her head in disbelief and let me ramble on. But since then I've changed some of my opinions and I'd like to think that I have a bit more nuanced taste.</p><p>If you're interested in getting started with classical music here's a quick list of awesome pieces to get you started.</p><p>Concerto, is a musical piece designed for one leading instrument accompanied by an orchestra. There are Violin Concertos, Cello Concertos, Viola Concertos, Piano Concertos etc. Concerto typically has three movements. The first and last movements are typically fast-paced and the second movement is usually slower.</p><p>Symphony, is a musical piece designed to be played by an entire orchestra. Symphonies typically have four movements. They are a lot more elaborate than concertos.</p><p><b>1. Vivaldi's Four Seasons</b> - <a href="https://open.spotify.com/album/6cU96XWKG0pjrh3jBrx4zE" target="_blank">Spotify</a></p><p>This is a collection of four violin concertos. My favorite is Summer. The third movement of the Summer concerto is just absolutely fantastic.</p><p><b>2. Beethoven's Fur Elise</b> - <a href="https://open.spotify.com/track/5yWClRIxwId7cl0WSboGUk" target="_blank">Spotify</a></p><p>This is a solo piano piece. This is a very popular piece that is easily recognizable. It is vivacious and soothing.<br></p><p><b>3. Mozart's Symphony #40</b> - <a href="https://open.spotify.com/album/4BJ5om5aruwSiU5oK8TEUD" target="_blank">Spotify</a></p><p>This is a popular symphony by Mozart that is easy to fo… | 1505282587 | ["music"] | I started listening to classical music in my late 20s. Violin pieces are my favorite. I started with classical because I needed music without words while I programmed. Nowadays I listen to it for the pure joy of listening. I got started with Vivaldi's Four Seasons. I thought that was the best piece of music ever conceived by humans. I used to argue with my wife (a music major) about how Vivaldi was better than Tchaikovsky. I was mostly naive and a little bit arrogant. She mostly shook her head in disbelief and let me ramble on. But since then I've changed some of my opinions and I'd like to think that I have a bit more nuanced taste. If you're interested in getting started with classical music here's a quick list of awesome pieces to get you started. Concerto, is a musical piece designed for one leading instrument accompanied by an orchestra. There are Violin Concertos, Cello Concertos, Viola Concertos, Piano Concertos etc. Concerto typically has three movements. The first and last movements are typically fast-paced and the second movement is usually slower. Symphony, is a musical piece designed to be played by an entire orchestra. Symphonies typically have four movements. They are a lot more elaborate than concertos. **1. Vivaldi's Four Seasons** - [Spotify](https://open.spotify.com/album/6cU96XWKG0pjrh3jBrx4zE) This is a collection of four violin concertos. My favorite is Summer. The third movement of the Summer concerto is just absolutely fantastic. **2. Beethoven's Fur Elise** - [Spotify](https://open.spotify.com/track/5yWClRIxwId7cl0WSboGUk) This is a solo piano piece. This is a very popular piece that is easily recognizable. It is vivacious and soothing. **3. Mozart's Symphony #40** - [Spotify](https://open.spotify.com/album/4BJ5om5aruwSiU5oK8TEUD) This is a popular symphony by Mozart that is easy to follow and pleasant to listen. **4. Czardas** - [Spotify](https://open.spotify.com/track/1k8q0uKc3m9uX35XgHhLGI "Link: https://open.spotify.com/track/1k8q0uKc3m9uX35XgHhLGI") This is a gypsy vi… | http://blog.amjith.com/classical-music-getting-started |
42 | Language and Thought | <div class="posthaven-post-body"><p>I believe that the language you speak influences the way you think. I don't have any kind of proof other than some anecdotal evidence. </p><p>Recently I started noticing this in the field of computer languages as well. I consider Python to be my dominant language. I have a coworker (let's call him Aaron, because that's his name) who likes to bait me by pointing out certain lack of features in Python and how Ruby gets it right. Most of the time I dismiss his complaints as invalid because I never have a use for those features in my day to day coding.</p><p>Then it dawned on me that I don't have a need for those features because I tend to think in Python. When I am presented with a problem I think of a solution that can be implemented in Python and my thought process naturally gravitates towards the features available in Python. </p><p>What I learned from this realization is, if you learn many different languages you'll never be happy with any single language. You'll always yearn for that sweet feature that is missing in your current language. </p><p>Let that be a lesson.</p></div> | 1521260665 | ["programming"] | I believe that the language you speak influences the way you think. I don't have any kind of proof other than some anecdotal evidence. Recently I started noticing this in the field of computer languages as well. I consider Python to be my dominant language. I have a coworker (let's call him Aaron, because that's his name) who likes to bait me by pointing out certain lack of features in Python and how Ruby gets it right. Most of the time I dismiss his complaints as invalid because I never have a use for those features in my day to day coding. Then it dawned on me that I don't have a need for those features because I tend to think in Python. When I am presented with a problem I think of a solution that can be implemented in Python and my thought process naturally gravitates towards the features available in Python. What I learned from this realization is, if you learn many different languages you'll never be happy with any single language. You'll always yearn for that sweet feature that is missing in your current language. Let that be a lesson. | http://blog.amjith.com/language-and-thought |
43 | Goodbye, Portland | <div class="posthaven-post-body"><p>It was a dark and stormy evening. The rain was pouring down. A young couple pulled into an apartment complex in the middle of Portland. The wife was pregnant and the husband was clueless (as always). Despite his cluelessness, they thrived in the city. They made new friends and established their roots. The husband sprouted gray hairs and the wife grew motherly. Before they knew it, five years have gone by. With a new kid in tow and a toddler running ahead, they're off to a new city to start anew.</p><p>For anyone confused by that paragraph, that's my way of saying we're no longer in Portland. I'm incredibly thankful to NewRelic for bringing me to Portland and raising me into an adult. I've forged friendships that'll last my lifetime. I created things that marked my name in the sand. I found a mentor who accelerated my career growth. I met coworkers who became best friends and confidants. I met humans who were caring and helpful. Thank you Portland, for enriching our lives. </p><p>I'm off to the Bay Area to work for Netflix. I'm sure the future holds wonderful opportunities, I'll always remember Portland as the city that doubled our family. Once a hippie, always ....</p> <div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[1157240]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1866985/2_n_YjDxA73wrEvm51BFSwg7bYc/large_IMG_20170309_105019.jpg" data-posthaven-state="processed" data-medium-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1866985/2_n_YjDxA73wrEvm51BFSwg7bYc/medium_IMG_20170309_105019.jpg" data-medium-width="800" data-medium-height="600" data-large-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1866985/2_n_YjDxA73wrEvm51BFSwg7bYc/large_IMG_20170309_105019.jpg" data-large-width="1200… | 1493012055 | ["portland", "personal"] | It was a dark and stormy evening. The rain was pouring down. A young couple pulled into an apartment complex in the middle of Portland. The wife was pregnant and the husband was clueless (as always). Despite his cluelessness, they thrived in the city. They made new friends and established their roots. The husband sprouted gray hairs and the wife grew motherly. Before they knew it, five years have gone by. With a new kid in tow and a toddler running ahead, they're off to a new city to start anew. For anyone confused by that paragraph, that's my way of saying we're no longer in Portland. I'm incredibly thankful to NewRelic for bringing me to Portland and raising me into an adult. I've forged friendships that'll last my lifetime. I created things that marked my name in the sand. I found a mentor who accelerated my career growth. I met coworkers who became best friends and confidants. I met humans who were caring and helpful. Thank you Portland, for enriching our lives. I'm off to the Bay Area to work for Netflix. I'm sure the future holds wonderful opportunities, I'll always remember Portland as the city that doubled our family. Once a hippie, always .... ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1866985/2_n_YjDxA73wrEvm51BFSwg7bYc/large_IMG_20170309_105019.jpg) | http://blog.amjith.com/goodbye-portland |
44 | Words, Words, Words | <div class="posthaven-post-body"><p>Vian has been picking up a few words courtesy of Sempi. The words he has picked up so far are the ones that Sempi uses with forceful emotion. </p><p><b>STOP:</b><br></p><p>Whenever Vian tries to take Sempi's toys, Sempi yells "STOOOOP" with conviction and distress. So that's the first word that Vian decided to pick up. Now he uses it with us generously. He can't quite pronounce the sound "ssss" so his STOP sounds like "TOP".<b><br></b></p><p>It's a catch all phrase for stopping anything that is unpleasant. So far he has used it to stop me from giving Yoshi hugs in front of him (jealousy). It is hilarious to watch him command his toys to "TOOPPP" when they keep sliding off of the couch or the table where he's playing.</p><p><b>NO:</b><br></p><p>This is the second word that he's picked up from Sempi. But the twist is, Vian says NO with a tinge of joy and pride. We've asked Sempi to ask Vian's permission before taking toys from Vian's hands. Sempi being the older, more responsible brother will ask politely "Vian can I please play with the toy you have in your hand?" and Vian responds "NO" with a smile and enthusiasm. It looks absolutely savage when witnessed in person.<b><br></b></p><p><b>READ:</b></p><p>This one, I'm very glad he's picked it up from Sempi. Sempi is a total <a href="http://blog.amjith.com/bookworm" target="_blank">book worm</a>. He asks us to read a book as soon as he wakes up, while eating, while lounging, right before bedtime, even while driving (instead we listen to podcasts while driving). Now Vian has picked up on this and he demands that we read to him while he eats. He can't pronounce "R" or "D" so it sounds more like a "WEE", "WEE". He get so excited about this that he would keep asking us to read even while we're reading him a book.<b><br></b></p></div> | 1513450079 | ["5yo", "1yo", "sempi", "vian"] | Vian has been picking up a few words courtesy of Sempi. The words he has picked up so far are the ones that Sempi uses with forceful emotion. **STOP:** Whenever Vian tries to take Sempi's toys, Sempi yells "STOOOOP" with conviction and distress. So that's the first word that Vian decided to pick up. Now he uses it with us generously. He can't quite pronounce the sound "ssss" so his STOP sounds like "TOP". It's a catch all phrase for stopping anything that is unpleasant. So far he has used it to stop me from giving Yoshi hugs in front of him (jealousy). It is hilarious to watch him command his toys to "TOOPPP" when they keep sliding off of the couch or the table where he's playing. **NO:** This is the second word that he's picked up from Sempi. But the twist is, Vian says NO with a tinge of joy and pride. We've asked Sempi to ask Vian's permission before taking toys from Vian's hands. Sempi being the older, more responsible brother will ask politely "Vian can I please play with the toy you have in your hand?" and Vian responds "NO" with a smile and enthusiasm. It looks absolutely savage when witnessed in person. **READ:** This one, I'm very glad he's picked it up from Sempi. Sempi is a total [book worm](http://blog.amjith.com/bookworm). He asks us to read a book as soon as he wakes up, while eating, while lounging, right before bedtime, even while driving (instead we listen to podcasts while driving). Now Vian has picked up on this and he demands that we read to him while he eats. He can't pronounce "R" or "D" so it sounds more like a "WEE", "WEE". He get so excited about this that he would keep asking us to read even while we're reading him a book. | http://blog.amjith.com/words-words-words |
45 | Fun with dosas | <div class="posthaven-post-body"><p>I love dosas. Dosa is a south Indian dish. A better version of a crepe (shots fired) or a ridiculously thin pancake. Sempi (5yo) is also a huge fan. </p><p>I'm making dosas for his breakfast and he requested that I make the dosas into shapes for him. He requested a police car. I was happy to oblige. </p><p> </p><div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[1271893]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2044675/9yeNKP9vUbyNoKqrRHfqqo4tyw4/large_MVIMG_20180313_080704.jpg" data-posthaven-state="processed" data-medium-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2044675/9yeNKP9vUbyNoKqrRHfqqo4tyw4/medium_MVIMG_20180313_080704.jpg" data-medium-width="800" data-medium-height="600" data-large-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2044675/9yeNKP9vUbyNoKqrRHfqqo4tyw4/large_MVIMG_20180313_080704.jpg" data-large-width="1200" data-large-height="900" data-thumb-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2044675/9yeNKP9vUbyNoKqrRHfqqo4tyw4/thumb_MVIMG_20180313_080704.jpg" data-thumb-width="200" data-thumb-height="200" data-xlarge-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2044675/9yeNKP9vUbyNoKqrRHfqqo4tyw4/xlarge_MVIMG_20180313_080704.jpg" data-xlarge-width="2400" data-xlarge-height="1800" data-orig-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2044675/9yeNKP9vUbyNoKqrRHfqqo4tyw4/MVIMG_20180313_080704.jpg" data-orig-width="4032" data-orig-height="3024" data-posthaven-id="2044675"> </p> </div> </div> <p></p><p>Sempi: What is this?</p><p>Me: A police car. </p><p>Sempi: It looks like a spaceship. Next time add some wheels to it.</p><p>Me: I'll see what I can do.</p><… | 1521263485 | ["5yo", "sempi"] | I love dosas. Dosa is a south Indian dish. A better version of a crepe (shots fired) or a ridiculously thin pancake. Sempi (5yo) is also a huge fan. I'm making dosas for his breakfast and he requested that I make the dosas into shapes for him. He requested a police car. I was happy to oblige. ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2044675/9yeNKP9vUbyNoKqrRHfqqo4tyw4/large_MVIMG_20180313_080704.jpg) Sempi: What is this? Me: A police car. Sempi: It looks like a spaceship. Next time add some wheels to it. Me: I'll see what I can do. ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2044676/ky1VwHbls4cfFiZjcwsYKQMLEjg/large_MVIMG_20180313_074843.jpg) | http://blog.amjith.com/fun-with-dosas |
46 | Downloading Specific Filetypes using 'wget' | <div class="posthaven-post-body"><p>I decided to prepare myself for the <a href="http://www.ai-class.com/">Intro to AI</a>, a free online course offered by Stanford. I found the course website: <a href="http://www.stanford.edu/class/cs221/schedule.html">http://www.stanford.edu/class/cs221/schedule.html</a> and wanted to download all the slides. </p> <p>It's time to pull all the ppt files from that page.</p> <div class="CodeRay"> <div class="code"><pre>wget -r -A.ppt http://www.stanford.edu/class/cs221/notes/ </pre></div> </div> <p>This created a tree of empty directories with one of them that had all the ppt files. Time to clean up the empty folders:</p> <div class="CodeRay"> <div class="code"><pre>find -depth -type d -empty -exec rmdir {} \;</pre></div> </div> <p>Ta-da! Empty folders are gone. </p> <p>Remember if you are typing a command more than once in succession there is a way to automate it. </p> </div> | 1312263492 | ["linux", "tech"] | I decided to prepare myself for the [Intro to AI](http://www.ai-class.com/), a free online course offered by Stanford. I found the course website: <http://www.stanford.edu/class/cs221/schedule.html> and wanted to download all the slides. It's time to pull all the ppt files from that page. ``` wget -r -A.ppt http://www.stanford.edu/class/cs221/notes/ ``` This created a tree of empty directories with one of them that had all the ppt files. Time to clean up the empty folders: ``` find -depth -type d -empty -exec rmdir {} \; ``` Ta-da! Empty folders are gone. Remember if you are typing a command more than once in succession there is a way to automate it. | http://blog.amjith.com/downloading-specific-filetypes-using-wget |
47 | Rapid Prototyping in Python | <div class="posthaven-post-body"><p>I was recently assigned to a new project at work. Like any good software engineer I started writing the pseudocode for the modules. We use C++ at work to write our programs.</p> <p>I quickly realized it's not easy to translate programming ideas to English statements without a syntactic structure. When I was whining about it to Vijay, he told me to try prototyping it in Python instead of writing pseudocode. Intrigued by this, I decided to write a prototype in Python to test how various modules will come together.</p> <p>Surprisingly it took me a mere 2 hours to code up the prototype. I can't emphasize enough, how effortless it was in Python.</p> <h2>What makes Python an ideal choice for prototyping:</h2> <p><strong>Dynamically typed language:</strong></p> <p>Python doesn't require you to declare the datatype of a variable. This lets you write a function that is generic enough to handle any kind of data. For eg:</p> <div class="CodeRay"> <div class="code"><pre><span class="keyword">def</span> <span class="function">max_val</span>(a,b): <span class="keyword">return</span> a <span class="keyword">if</span> a >b <span class="keyword">else</span> b</pre></div> </div> <p>This function can take integers, floats, strings, a combination of any of those, or lists, dictionaries, tuples, whatever.</p> <p>A list in Python need not be homogenous. This is a perfectly good list:</p> <div class="CodeRay"> <div class="code"><pre>[<span class="integer">1</span>, <span class="string"><span class="delimiter">'</span><span class="content">abc</span><span class="delimiter">'</span></span>, [<span class="integer">1</span>,<span class="integer">2</span>,<span class="integer">3</span>]]</pre></div> </div> <p>This lets you pack data in unique ways on the fly which can later be translated to a class or a struct in a statically typed language like C++.</p> <div class="CodeRay"> <div class="code"><pre><span class="keyword">class</span> <span class="class">newDataType</span> { <… | 1317005155 | ["c++", "programming", "python"] | I was recently assigned to a new project at work. Like any good software engineer I started writing the pseudocode for the modules. We use C++ at work to write our programs. I quickly realized it's not easy to translate programming ideas to English statements without a syntactic structure. When I was whining about it to Vijay, he told me to try prototyping it in Python instead of writing pseudocode. Intrigued by this, I decided to write a prototype in Python to test how various modules will come together. Surprisingly it took me a mere 2 hours to code up the prototype. I can't emphasize enough, how effortless it was in Python. What makes Python an ideal choice for prototyping: -------------------------------------------------- **Dynamically typed language:** Python doesn't require you to declare the datatype of a variable. This lets you write a function that is generic enough to handle any kind of data. For eg: ``` def max\_val(a,b): return a if a >b else b ``` This function can take integers, floats, strings, a combination of any of those, or lists, dictionaries, tuples, whatever. A list in Python need not be homogenous. This is a perfectly good list: ``` [1, 'abc', [1,2,3]] ``` This lets you pack data in unique ways on the fly which can later be translated to a class or a struct in a statically typed language like C++. ``` class newDataType { int i; String str; Vector vInts; }; ``` **Rich Set to Data-Structures:** Built-in support for lists, dictionaries, sets, etc reduces the time involved in hunting for a library that provides you those basic data-structures. **Expressive and Succinct:** The algorithms that operate on the data-structures are intuitive and simple to use. The final code is more readable than a pseudocode. For example: Lets check if a list has an element ``` >>> lst = [1,2,3] # Create a list >>> res = 2 in lst # Check if 2 is in 'lst' True ``` If we have to do it in C++. ``` list lst; lst.push_back(3); lst.push_back(1); lst.pu… | http://blog.amjith.com/rapid-prototyping-in-python |
48 | Facts about a 9 month old | <div class="posthaven-post-body"><p>These facts are based on a sample size of one 9 month old.</p><ul> <li>9-month-olds can eat 3 whole grapes before they get bored of it.</li> <li>9-month-olds can go from smiling to crying in 5 seconds flat. I've also managed to reverse this reaction in 5 seconds. Once!</li> <li>9-month-olds have no sense of personal hygiene. If you try to kiss them on their cheeks, they can turn their head at the last second and slobber all over your mouth.</li> <li>If you give them an avocado to eat, make sure to wash their hair afterward. Avocado leaks out of their hair and all over their face.</li> <li>9-month-olds are dramatic. They are emotionally moved when you pluck them out of their mother's hand. They cry out in joy for saving them. With tears flowing down their chubby cheeks.</li> <li>9-month-olds are thrill seekers. Even though they can't walk to save their lives, they will try to launch themselves down the stairs or climb up tables.</li> </ul><p><br></p></div> | 1487548397 | ["0yo", "personal", "vian"] | These facts are based on a sample size of one 9 month old. * 9-month-olds can eat 3 whole grapes before they get bored of it. * 9-month-olds can go from smiling to crying in 5 seconds flat. I've also managed to reverse this reaction in 5 seconds. Once! * 9-month-olds have no sense of personal hygiene. If you try to kiss them on their cheeks, they can turn their head at the last second and slobber all over your mouth. * If you give them an avocado to eat, make sure to wash their hair afterward. Avocado leaks out of their hair and all over their face. * 9-month-olds are dramatic. They are emotionally moved when you pluck them out of their mother's hand. They cry out in joy for saving them. With tears flowing down their chubby cheeks. * 9-month-olds are thrill seekers. Even though they can't walk to save their lives, they will try to launch themselves down the stairs or climb up tables. | http://blog.amjith.com/facts-about-a-9-month-old |
49 | Conversations with a 4 year old | <div class="posthaven-post-body"><p>We were sitting at a restaurant eating brunch. Yoshi got Calamari which was served with a lemon. Sempi is sipping his orange juice. Suddenly he drops this pearl of wisdom. </p><p><b>Why do we call an orange, orange but don't call a lemon, yellow?</b></p><p>Yoshi and I both choked on our food from laughing so hard.</p></div> | 1497214272 | ["4yo", "sempi", "personal"] | We were sitting at a restaurant eating brunch. Yoshi got Calamari which was served with a lemon. Sempi is sipping his orange juice. Suddenly he drops this pearl of wisdom. **Why do we call an orange, orange but don't call a lemon, yellow?** Yoshi and I both choked on our food from laughing so hard. | http://blog.amjith.com/conversations-with-a-4-year-old |
50 | Contributing to Open Source | <div class="posthaven-post-body"><p>Last week I successfully submitted my <a href="https://bitbucket.org/bobf/bpython/changeset/bc4a8a7a0e65">first patch</a> to an open source project and it was accepted. </p> <p>I like the <a href="http://www.bpython-interpreter.org/">bpython</a> interpreter for all my python needs. It is quite handy for a python newbie like me. A few weeks ago I was in the middle of building an elaborate datastructure to learn list comprehension in python, when bpython crashed and took all the history with it. I <a href="https://twitter.com/#!/_ikanobori/status/60822979994583040">whined</a> about it on twitter and one of the developers of the project prompted me to submit a bug report. I was quite impressed by the fact that a core developer of bpython replied to my bitching on twitter.</p> <p>After I filed the bug report, I decided to get the source code and poke around. I finally implemented a feature that saved the history after each command instead of waiting till the end of a session. </p> <p>The following factors were the main impetus that led me to contribute to the project. </p> <p><strong>Project Hosting: </strong></p> <p>The project was hosted on <a href="http://bitbucket.org">bit bucket</a> which is a <a href="http://github.com">Github</a> equivalent for <a href="http://mercurial.selenic.com/">mercurial</a>. This makes it so easy to fork a project and issue pull requests, compared to the traditional source forge model of submitting patches in a mailing list. The social coding sites like Github and BitBucket have reduced much of the initial friction in starting an open source project.</p> <p><strong>Project Size:</strong></p> <p>This one has a huge impact when I decide to dive into the code. Traditional C projects tend to have a ton of files that are too big which is daunting for a beginner. The bpython project was written in python and had a total of 13 .py files. This makes it dead simple to make a quick change and run the project without compiling it.… | 1304574540 | ["programming", "python"] | Last week I successfully submitted my [first patch](https://bitbucket.org/bobf/bpython/changeset/bc4a8a7a0e65) to an open source project and it was accepted. I like the [bpython](http://www.bpython-interpreter.org/) interpreter for all my python needs. It is quite handy for a python newbie like me. A few weeks ago I was in the middle of building an elaborate datastructure to learn list comprehension in python, when bpython crashed and took all the history with it. I [whined](https://twitter.com/#!/_ikanobori/status/60822979994583040) about it on twitter and one of the developers of the project prompted me to submit a bug report. I was quite impressed by the fact that a core developer of bpython replied to my bitching on twitter. After I filed the bug report, I decided to get the source code and poke around. I finally implemented a feature that saved the history after each command instead of waiting till the end of a session. The following factors were the main impetus that led me to contribute to the project. **Project Hosting:** The project was hosted on [bit bucket](http://bitbucket.org) which is a [Github](http://github.com) equivalent for [mercurial](http://mercurial.selenic.com/). This makes it so easy to fork a project and issue pull requests, compared to the traditional source forge model of submitting patches in a mailing list. The social coding sites like Github and BitBucket have reduced much of the initial friction in starting an open source project. **Project Size:** This one has a huge impact when I decide to dive into the code. Traditional C projects tend to have a ton of files that are too big which is daunting for a beginner. The bpython project was written in python and had a total of 13 .py files. This makes it dead simple to make a quick change and run the project without compiling it. Again the choice of language has a lot to do with this. **IRC:** The welcoming nature of the community around a project does a lot to encourage a new comer. The IRC channels are a great way… | http://blog.amjith.com/contributing-to-open-source |
51 | Falsetto dude and the Fat man | <div class="posthaven-post-body"><p>A typical conversation between my wife and I: </p> <p></p> <div>Playing Ne Me Quitte Pas by Nina Simone</div> <p></p> <div> <object height="40" width="250"> <param name="movie" value="http://grooveshark.com/songWidget.swf"> <param name="wmode" value="window"> <param name="allowScriptAccess" value="always"> <param name="flashvars" value="hostname=cowbell.grooveshark.com&songIDs=19332692&style=metal&p=0"> <embed src="http://grooveshark.com/songWidget.swf" type="application/x-shockwave-flash" wmode="window" height="40" flashvars="hostname=cowbell.grooveshark.com&songIDs=19332692&style=metal&p=0" width="250"></object> </div> <p></p> <div> <strong>Yoshi</strong> : Ow! What is that abomination? </div> <div> <strong>Amjith</strong>: It's a french song sung by the great Nina Simone.</div> <div> <strong>Yoshi</strong> : It's a woman? Sounded like a dude singing in falsetto.</div> <div> <strong>Yoshi </strong>: I'm leaving the room if you don't change the song.</div> <div> <strong>Amjith</strong>: FINE. You play something then.</div> <p></p> <div>Yoshi puts on Ave Maria by Pavarotti. </div> <div><span> <object height="40" width="250"> <param name="movie" value="http://grooveshark.com/songWidget.swf"> <param name="wmode" value="window"> <param name="allowScriptAccess" value="always"> <param name="flashvars" value="hostname=cowbell.grooveshark.com&songIDs=29024538&style=metal&p=0"> <embed src="http://grooveshark.com/songWidget.swf" type="application/x-shockwave-flash" wmode="window" height="40" flashvars="hostname=cowbell.grooveshark.com&songIDs=29024538&style=metal&p=0" width="250"></object> </span></div> <p></p> <div><span><span>I wait for 2 mins.</span></span></div> <p></p> <div> <strong>Amjith</strong>: Hey! Your fat man seems to be yelling at Maria. </div> <p></p> <div>Yosh leaves the room and I sleep on the couch.</div> <p></p> <p></p> <div>The End</div></div> | 1312733100 | ["music"] | A typical conversation between my wife and I: Playing Ne Me Quitte Pas by Nina Simone **Yoshi** : Ow! What is that abomination? **Amjith**: It's a french song sung by the great Nina Simone. **Yoshi** : It's a woman? Sounded like a dude singing in falsetto. **Yoshi**: I'm leaving the room if you don't change the song. **Amjith**: FINE. You play something then. Yoshi puts on Ave Maria by Pavarotti. I wait for 2 mins. **Amjith**: Hey! Your fat man seems to be yelling at Maria. Yosh leaves the room and I sleep on the couch. The End | http://blog.amjith.com/falsetto-dude-and-the-fat-man |
52 | Conversations with a 1 year old | <div class="posthaven-post-body"><p>Vian is picking up new words. His new addition is "Yeah". It is pronounced with an emphatic "EYAH!" (imagine a Karate yell).<br></p><p>I like asking him random questions that are at the edge of his understanding and watch him say "Yeah!".</p><p>But sometimes he uses his "Yeah!" with such precision it catches us off guard. Such as last night when we were getting him ready for bed.</p><p>Yoshi: Vian, would you like to hold a toy? You can pick either Pandie (stuffed panda) or the fire engine.<br></p><p>Vian: Yeah!</p><p><br></p></div> | 1514559217 | ["personal", "1yo", "vian"] | Vian is picking up new words. His new addition is "Yeah". It is pronounced with an emphatic "EYAH!" (imagine a Karate yell). I like asking him random questions that are at the edge of his understanding and watch him say "Yeah!". But sometimes he uses his "Yeah!" with such precision it catches us off guard. Such as last night when we were getting him ready for bed. Yoshi: Vian, would you like to hold a toy? You can pick either Pandie (stuffed panda) or the fire engine. Vian: Yeah! | http://blog.amjith.com/conversations-with-a-1-year-old |
53 | Dancing with the dorks | <div class="posthaven-post-body"><p>Early Wednesday morning. I'm entertaining both Sempi and Vian. I start to play some music (Tamil songs) and decided to dance. Sempi reaches for his ear muffs and Vian starts to bounce to the music. </p><p>I have the sudden realization that both the kids are doomed to be dorks if they're learning dance moves from me. Naturally, I start dancing harder. </p></div> | 1488552650 | ["0yo", "4yo", "personal", "vian", "sempi"] | Early Wednesday morning. I'm entertaining both Sempi and Vian. I start to play some music (Tamil songs) and decided to dance. Sempi reaches for his ear muffs and Vian starts to bounce to the music. I have the sudden realization that both the kids are doomed to be dorks if they're learning dance moves from me. Naturally, I start dancing harder. | http://blog.amjith.com/dancing-with-the-dorks |
54 | Stealing words | <div class="posthaven-post-body"><p>I'm playing Tamil songs on the computer and busting my <a href="http://blog.amjith.com/dancing-with-the-dorks" target="_blank">moves</a>. </p><p>Sempi: Appa why does this song keep saying 'poop'.</p><p>Me: Haha. It's not saying 'Poop', it's saying 'poo'. I guess that's not any better. In Tamil 'Poo' means flower. They're singing about a flower.</p><p>Sempi: 'Poo' means flower? </p><p>Me: Yeah. But to be fair we had that word a long time before English. English stole it from us. </p><p>Sempi: How do you steal words? </p><p>Me: Ok. I was just kidding. Tamil people heard the sound 'poo' and decided it's such a beautiful sound, we'll use it to mean flower. English people heard the same sound and figured it's a fitting word for excrement.</p><p>Sempi: What's excrement? </p><p>Me: Sigh...</p><p><br></p></div> | 1488673336 | ["4yo", "personal", "sempi"] | I'm playing Tamil songs on the computer and busting my [moves](http://blog.amjith.com/dancing-with-the-dorks). Sempi: Appa why does this song keep saying 'poop'. Me: Haha. It's not saying 'Poop', it's saying 'poo'. I guess that's not any better. In Tamil 'Poo' means flower. They're singing about a flower. Sempi: 'Poo' means flower? Me: Yeah. But to be fair we had that word a long time before English. English stole it from us. Sempi: How do you steal words? Me: Ok. I was just kidding. Tamil people heard the sound 'poo' and decided it's such a beautiful sound, we'll use it to mean flower. English people heard the same sound and figured it's a fitting word for excrement. Sempi: What's excrement? Me: Sigh... | http://blog.amjith.com/stealing-words |
55 | New Laptop | <div class="posthaven-post-body"> <div> <p>I finally ordered a new Macbook air for myself. One of my friends remarked at the fact that this is the first brand new laptop that I've ordered for myself. Since I'm a bit of a Linux fanatic, I tend to restore old computers and install a linux distro and make them useable. So I always get old laptops for cheap for myself. But this time I decided it's time to checkout Mac OS X. So I'll be replacing my Netboook (yep!) with the Macbook air. Anyone need a Lenovo S10 netbook :). I will even do a clean-install of Ubuntu or your choice of Linux distro. </p> <p>This new Macbook air will be my primary development machine. Let's hope it can take the abuse.</p> </div> </div> | 1314495540 | [] | I finally ordered a new Macbook air for myself. One of my friends remarked at the fact that this is the first brand new laptop that I've ordered for myself. Since I'm a bit of a Linux fanatic, I tend to restore old computers and install a linux distro and make them useable. So I always get old laptops for cheap for myself. But this time I decided it's time to checkout Mac OS X. So I'll be replacing my Netboook (yep!) with the Macbook air. Anyone need a Lenovo S10 netbook :). I will even do a clean-install of Ubuntu or your choice of Linux distro. This new Macbook air will be my primary development machine. Let's hope it can take the abuse. | http://blog.amjith.com/new-laptop |
56 | Leaders are genuine | <div class="posthaven-post-body"><p>I had a chance to watch one of my role models in action today. He is one of the young, intelligent managers who rose to the top of the ladder pretty quickly. He managed to do that without creating enemies along the way which is pretty hard to do in big corporations. Everyone who has worked with him will attest to the fact that he deserves to be in the top and has nothing bad to say about him. </p> <p></p> <div>Unfortunately I never got a chance to work directly with him, but watching him today made me realize why he is different from the other managers. It all came down to being truthful. Just being genuine to your fellow workers can mean a world of difference. When he tries to inspire someone, he is not the one to throw around some business lingo. He doesn't just say "We really appreciate all the work you are doing" or "Keep up the good work". That is just a terrible compliment. When he praises you for something, you know he really appreciates your work.</div> <p></p> <div>One lesson I learned from him today is "Be Genuine", and I shall try.</div></div> | 1299044220 | [] | I had a chance to watch one of my role models in action today. He is one of the young, intelligent managers who rose to the top of the ladder pretty quickly. He managed to do that without creating enemies along the way which is pretty hard to do in big corporations. Everyone who has worked with him will attest to the fact that he deserves to be in the top and has nothing bad to say about him. Unfortunately I never got a chance to work directly with him, but watching him today made me realize why he is different from the other managers. It all came down to being truthful. Just being genuine to your fellow workers can mean a world of difference. When he tries to inspire someone, he is not the one to throw around some business lingo. He doesn't just say "We really appreciate all the work you are doing" or "Keep up the good work". That is just a terrible compliment. When he praises you for something, you know he really appreciates your work. One lesson I learned from him today is "Be Genuine", and I shall try. | http://blog.amjith.com/leaders-inspire |
57 | How to Find Local Tech Jobs | <div class="posthaven-post-body"><p>Looking for tech jobs can be daunting. Networking is touted as the magic bullet for job seekers. But where do you start?</p> <p>Here are some robust ways to build your network.</p> <p><strong>Users Group:</strong></p> <p>User groups are typically monthly meetings for geeks who get together to talk about their favorite programming language or operating system. Usually they are accompanied with a mailing list which is used to announce the meetings, ask questions and <span><strong>post job openings</strong></span>. So sign up to the mailing list and start attending the meetups. They are full of really nice people who are willing to help. </p> <ul> <li> <a href="http://groups.google.com/group/utahpython/">Utah Python</a> - Utah Python Users Group</li> <li> <a href="http://utruby.org/">URUG</a> - Utah Ruby Users Group</li> <li> <a href="http://www.sllug.org/">SLLUG</a> - Salt Lake Linux Users Group <ul> <li> <a href="http://www.sllug.org/cgi-bin/mailman/listinfo/sllug-jobs-announce">SLLUG-JOBS</a> - Mailing list to announce job postings</li> </ul> </li> <li> <a href="http://www.plug.org/">PLUG</a> - Provo Linux Users Group</li> </ul><p><strong>Local Conferences:</strong></p> <p>Most cities have some tech conferences that are a great source for networking. I found out about a lot of the user group by going to one of the following conference.</p> <p><a href="http://utos.org/">UTOSC</a> - Utah Open Source Conference.</p> <p><a href="http://project-day.utos.org/projects-2011/">HackUTOS</a> - Utah Open Source Project Day - Geeks, snacks and open source.</p> <p><a href="http://www.launchup.org/">LaunchUp</a> - A local entreneurship clinic. A great way to learn about the local start-up scene. You can meet new CEOs and fresh companies looking to hire tech talent. A must for job-seekers.</p> <p>I hope this helps someone.</p></div> | 1307406484 | ["jobs", "tech"] | Looking for tech jobs can be daunting. Networking is touted as the magic bullet for job seekers. But where do you start? Here are some robust ways to build your network. **Users Group:** User groups are typically monthly meetings for geeks who get together to talk about their favorite programming language or operating system. Usually they are accompanied with a mailing list which is used to announce the meetings, ask questions and **post job openings**. So sign up to the mailing list and start attending the meetups. They are full of really nice people who are willing to help. * [Utah Python](http://groups.google.com/group/utahpython/) - Utah Python Users Group * [URUG](http://utruby.org/) - Utah Ruby Users Group * [SLLUG](http://www.sllug.org/) - Salt Lake Linux Users Group + [SLLUG-JOBS](http://www.sllug.org/cgi-bin/mailman/listinfo/sllug-jobs-announce) - Mailing list to announce job postings * [PLUG](http://www.plug.org/) - Provo Linux Users Group **Local Conferences:** Most cities have some tech conferences that are a great source for networking. I found out about a lot of the user group by going to one of the following conference. [UTOSC](http://utos.org/) - Utah Open Source Conference. [HackUTOS](http://project-day.utos.org/projects-2011/) - Utah Open Source Project Day - Geeks, snacks and open source. [LaunchUp](http://www.launchup.org/) - A local entreneurship clinic. A great way to learn about the local start-up scene. You can meet new CEOs and fresh companies looking to hire tech talent. A must for job-seekers. I hope this helps someone. | http://blog.amjith.com/how-to-find-local-tech-jobs |
58 | Have a Schedule | <div class="posthaven-post-body"><p>After wasting about 3 hours watching old episodes of The Office, I had a sinking feeling last night that I'm not working towards any of my life goals. </p> <div> <ul> <li>Learn JS</li> <li>Release mobile apps</li> <li>Get better at Python</li> <li>Do a startup or at least join one</li> </ul> <div>But thanks to my thoughtful wife, I didn't freak out about it. She gave me some tangible ideas to remedy the situation (not one of those "You'll be fine"). </div> </div> <p></p> <div>So new plan:</div> <div> <ul> <li>Set short-term goals. </li> <li>Work on my stuff and report the progress every week to my buddy <a href="http://vijayd.posterous.com/">Vijay</a>. </li> </ul> </div> <div>This should keep me accountable and on track. To actually show some progress, I'm going to fix my schedule and follow <a href="http://lifehacker.com/#!281626/jerry-seinfelds-productivity-secret">Seinfield's Productivity Technique</a>.</div> <div> <ul> <li>Tue (6-9)</li> <li><span>Wed (6-9) - bonus day</span></li> <li>Thu (6-9)</li> <li>Sat (5-9)</li> <li>Sun (1-5)</li> </ul> <div>Phew! crisis averted. Now back to work.</div> </div></div> | 1299087060 | [] | After wasting about 3 hours watching old episodes of The Office, I had a sinking feeling last night that I'm not working towards any of my life goals. * Learn JS * Release mobile apps * Get better at Python * Do a startup or at least join one But thanks to my thoughtful wife, I didn't freak out about it. She gave me some tangible ideas to remedy the situation (not one of those "You'll be fine"). So new plan: * Set short-term goals. * Work on my stuff and report the progress every week to my buddy [Vijay](http://vijayd.posterous.com/). This should keep me accountable and on track. To actually show some progress, I'm going to fix my schedule and follow [Seinfield's Productivity Technique](http://lifehacker.com/#!281626/jerry-seinfelds-productivity-secret). * Tue (6-9) * Wed (6-9) - bonus day * Thu (6-9) * Sat (5-9) * Sun (1-5) Phew! crisis averted. Now back to work. | http://blog.amjith.com/have-a-schedule |
59 | Why do I hate Gnome? | <div class="posthaven-post-body">I've been using Ubuntu Linux on my netbook for the past couple of days and I'm quite pleased with the whole experience, except for the initial <a href="/ubuntu-and-i-have-some-trust-issues-tag-ubunt" target="_blank">issues</a> (I just won't trust the auto-update).<p></p><div>Ubuntu uses the Gnome desktop environment by default with a little bit of tweaking. Gnome UI designers have a sense of aesthetic cognizance to their designs. I've always appreciated the crisp icons and the polished dialogs. I've been known to throw around the word stunning, quite generously, while describing Gnome. </div> <p></p><div>All these initial infatuations almost made me forget the reasons why I abandoned Gnome a few years ago. I hate the absence of a central control center to tweak the default behavior of Gnome. There is however a severely handicapped version called gconf-editor which is like a terrible cousin of Windows Registry. So now if you want sloppy focus on gnome that doesn't raise your window when you click on it, you just have to do the following simple steps:<p></p> </div><div><ol> <li>Open gconf-editor</li> <li>apps</li> <li>metacity</li> <li>general</li> <li>raise on click (uncheck)</li> </ol></div><div>Quite intuitive wouldn't you agree? </div><p></p><div>Oh you want to enable compositing, so your gnome-do can have some slick skins, here's how you achieve that: </div> <p></p><div><ol> <li>Open gconf-editor</li> <li>apps</li> <li>metacity</li> <li>general</li> <li>compositing_manager (check)</li> </ol></div><div>Why? Why would you think this is more intuitive than having a simple GUI driven control center? I'm told this was a conscious choice by Gnome developers because giving choices tend to confuse their users.</div> <p></p><blockquote class="gmail_quote"> If you think your users are idiots, only idiots will use it.</blockquote><p></p><div>No wonder <a href="http://www.desktoplinux.com/news/NS8745257437.html">Linus was pissed</a>… | 1298958567 | ["gnome", "linux", "Ubuntu"] | I've been using Ubuntu Linux on my netbook for the past couple of days and I'm quite pleased with the whole experience, except for the initial [issues](/ubuntu-and-i-have-some-trust-issues-tag-ubunt) (I just won't trust the auto-update).Ubuntu uses the Gnome desktop environment by default with a little bit of tweaking. Gnome UI designers have a sense of aesthetic cognizance to their designs. I've always appreciated the crisp icons and the polished dialogs. I've been known to throw around the word stunning, quite generously, while describing Gnome. All these initial infatuations almost made me forget the reasons why I abandoned Gnome a few years ago. I hate the absence of a central control center to tweak the default behavior of Gnome. There is however a severely handicapped version called gconf-editor which is like a terrible cousin of Windows Registry. So now if you want sloppy focus on gnome that doesn't raise your window when you click on it, you just have to do the following simple steps: 1. Open gconf-editor 2. apps 3. metacity 4. general 5. raise on click (uncheck) Quite intuitive wouldn't you agree? Oh you want to enable compositing, so your gnome-do can have some slick skins, here's how you achieve that: 1. Open gconf-editor 2. apps 3. metacity 4. general 5. compositing\_manager (check) Why? Why would you think this is more intuitive than having a simple GUI driven control center? I'm told this was a conscious choice by Gnome developers because giving choices tend to confuse their users. > If you think your users are idiots, only idiots will use it. No wonder [Linus was pissed](http://www.desktoplinux.com/news/NS8745257437.html) at Gnome and started recommending KDE. | http://blog.amjith.com/why-do-i-hate-gnome |
60 | Scripting Tmux Layouts | <div class="posthaven-post-body"><p><a href="http://tmux.sourceforge.net/">Tmux</a> is an awesome replacement for Screen. I have a couple of standard terminal layouts for programming. One of them is show below.</p> <ul> <li> <a href="http://vim.org">Vim</a> editor on the left.</li> <li>Top right pane has the <a href="http://bpython-interpreter.org/">bpython</a> interpreter. </li> <li>Bottom right pane has the bash prompt. </li> </ul><p> </p><div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[520215]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892933/mm5x3LqvXmEauncIa8R6JP4f2cg/large_python_dev.png" data-posthaven-state="processed" data-medium-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892933/mm5x3LqvXmEauncIa8R6JP4f2cg/medium_python_dev.png" data-medium-width="800" data-medium-height="413" data-large-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892933/mm5x3LqvXmEauncIa8R6JP4f2cg/large_python_dev.png" data-large-width="1200" data-large-height="619" data-thumb-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892933/mm5x3LqvXmEauncIa8R6JP4f2cg/thumb_python_dev.png" data-thumb-width="200" data-thumb-height="200" data-xlarge-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892933/mm5x3LqvXmEauncIa8R6JP4f2cg/xlarge_python_dev.png" data-xlarge-width="" data-xlarge-height="" data-orig-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892933/mm5x3LqvXmEauncIa8R6JP4f2cg/python_dev.png" data-orig-width="1600" data-orig-height="825" data-posthaven-id="892933"> </p> </div> </div> <p></p> <p>I have a small tmux script in my ~/.tmux/pdev file that has the following lines</p> <div class="CodeRay"> <div class="code"><pre>selectp -t 0 … | 1312435140 | ["linux", "programming", "python", "tmux"] | [Tmux](http://tmux.sourceforge.net/) is an awesome replacement for Screen. I have a couple of standard terminal layouts for programming. One of them is show below. * [Vim](http://vim.org) editor on the left. * Top right pane has the [bpython](http://bpython-interpreter.org/) interpreter. * Bottom right pane has the bash prompt. ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892933/mm5x3LqvXmEauncIa8R6JP4f2cg/large_python_dev.png) I have a small tmux script in my ~/.tmux/pdev file that has the following lines ``` selectp -t 0 # Select pane 0 splitw -h -p 50 'bpython' # Split pane 0 vertically by 50% selectp -t 1 # Select pane 1 splitw -v -p 25 # Split pane 1 horizontally by 25% selectp -t 0 # Select pane 0 ``` In my [tmux.conf](https://github.com/amjith/_dotties/blob/master/tmux.conf) file I have bound <prefix>+P to sourcing this file. So now anytime I want to launch my python dev layout, I hit <prefix>+<shift>+p. ``` bind P source-file ~/.tmux/pdev ``` | http://blog.amjith.com/scripting-tmux-layouts |
61 | Snowboarding @ Sundance | <div class="posthaven-post-body"><p>Just got back from Snowboarding at Sundance Ski resort. I fell down a lot less than I did during my previous times. I'm also doing a lot more toe turns which has always been an issue. I decided to try the blue slopes today which was good and bad. I got over my fear of going down the steep sections, but I also got too tired to enjoy the green sections of the run. I can tell that I'm getting a lot faster these days because the runs seem shorted (or quicker). One more season and I'll be a pro :). </p> <p></p> <div>After our snowboarding session, I had a near melt down. I couldn't find my car keys in any of my jacket pockets and I don't have a spare key for that car anywhere. I checked with the lost and found with no success and I requested the security to jack the car door for me. Right when they asked me to sign some release forms and were about to insert the lever into my car window, Yoshi comes out of no where (she decided to retire after a few runs) and declares that she has the keys. It was a photo-finish ending for a great day. </div> <p></p> <div>I just love the fact that my wife can save the day no matter how much I manage to screw up.</div></div> | 1299133200 | [] | Just got back from Snowboarding at Sundance Ski resort. I fell down a lot less than I did during my previous times. I'm also doing a lot more toe turns which has always been an issue. I decided to try the blue slopes today which was good and bad. I got over my fear of going down the steep sections, but I also got too tired to enjoy the green sections of the run. I can tell that I'm getting a lot faster these days because the runs seem shorted (or quicker). One more season and I'll be a pro :). After our snowboarding session, I had a near melt down. I couldn't find my car keys in any of my jacket pockets and I don't have a spare key for that car anywhere. I checked with the lost and found with no success and I requested the security to jack the car door for me. Right when they asked me to sign some release forms and were about to insert the lever into my car window, Yoshi comes out of no where (she decided to retire after a few runs) and declares that she has the keys. It was a photo-finish ending for a great day. I just love the fact that my wife can save the day no matter how much I manage to screw up. | http://blog.amjith.com/snowboarding-sundance |
62 | Coffescript - A Better Way to JS | <div class="posthaven-post-body"><p>I went to attend the <a href="http://utruby.org/">URUG</a> (Utah Ruby Users Group) meeting today because a little <a href="http://twitter.com/#!/dbrady">birdy</a> said there will be some Javascript related presentations. </p> <p></p> <div>I got to see an awesome presentation by <a href="http://tadthorley.com">Tad Thorley</a> on <a href="http://jashkenas.github.com/coffee-script/">Coffeescript</a>. It's a minimalistic language that compiles to Javascript. Take a Javascript program and start removing unwanted literals from the syntax until you can't remove anymore, that's how a Coffeescript program looks like. </div> <p></p> <div>Its the kind of minimalism that makes you appreciate the beauty of code. It combines the good parts of Python and Ruby syntax. There are some side-by-side <a href="http://jashkenas.github.com/coffee-script/#literals">comparisons</a> of Coffeescript and Javascript code on the Coffeescript website.</div> <p></p> <div>Tad might post his slides (which are just short snippets of code) on github and I'll try to link it here.</div> <p></p> <div>Update: Coffee Script Presentation - <a href="https://github.com/phaedryx/coffeescript-presentation">https://github.com/phaedryx/coffeescript-presentation</a> </div></div> | 1299655320 | ["coffeescript", "javascript"] | I went to attend the [URUG](http://utruby.org/) (Utah Ruby Users Group) meeting today because a little [birdy](http://twitter.com/#!/dbrady) said there will be some Javascript related presentations. I got to see an awesome presentation by [Tad Thorley](http://tadthorley.com) on [Coffeescript](http://jashkenas.github.com/coffee-script/). It's a minimalistic language that compiles to Javascript. Take a Javascript program and start removing unwanted literals from the syntax until you can't remove anymore, that's how a Coffeescript program looks like. Its the kind of minimalism that makes you appreciate the beauty of code. It combines the good parts of Python and Ruby syntax. There are some side-by-side [comparisons](http://jashkenas.github.com/coffee-script/#literals) of Coffeescript and Javascript code on the Coffeescript website. Tad might post his slides (which are just short snippets of code) on github and I'll try to link it here. Update: Coffee Script Presentation - <https://github.com/phaedryx/coffeescript-presentation> | http://blog.amjith.com/coffescript-a-better-way-to-js-tag-javascript |
63 | Synchronize Panes in Tmux | <div class="posthaven-post-body"><p><span><span>Tmux is an alternative for screen. For anyone who doesn't know screen, it is a terminal multiplexer which means, it allow multiple windows in terminal. It can split your window into multiple panes (vertical/horizontal), detach a session which can be attached at a later time. Detach/Attach is very useful for running a job in a remote server without having to keep the ssh open the whole time. </span> </span></p> <div>Tmux can be configured by ~/<a href="https://github.com/amjith/_dotties/blob/master/tmux.conf">.tmux.conf</a> file.</div> <div><span>My prefix key is Ctrl-q.</span></div> <div><strong>Synchronizing panes:</strong></div> <div>If you want to send your keystrokes to all the panes in your tmux window: </div> <div><prefix> :setw synchronize-panes</div> <div>In my case I do:</div> <div><span>Ctrl-q:setw synchronize-panes</span></div> <div> <div class="posthaven-file posthaven-file-video posthaven-file-state-processed" id="posthaven_video_892959"> <div data-setup="{"fluid":true,"aspectRatio":"125:71"}" poster="https://phaven-prod.s3.amazonaws.com/files/video_part/video_thumb/892959/jXSLbhKPJD-IfWNHFt2NlBxL6sE/frame_0000.png" preload="auto" class="video-js vjs-paused posthaven_video_892959-dimensions vjs-fluid vjs-controls-enabled vjs-user-active" id="posthaven_video_892959"><video id="posthaven_video_892959_html5_api" class="vjs-tech" preload="auto" poster="https://phaven-prod.s3.amazonaws.com/files/video_part/video_thumb/892959/jXSLbhKPJD-IfWNHFt2NlBxL6sE/frame_0000.png" data-setup="{"fluid":true,"aspectRatio":"125:71"}" src="https://phaven-prod.s3.amazonaws.com/files/video_part/encoded/892959/on_ktCAouzSgbESnk0AM4zYr8d8/tmux.mp4"> <source src="https://phaven-prod.s3.amazonaws.com/files/video_part/encoded/892959/on_ktCAouzSgbESnk0AM4zYr8d8/tmux.mp4" type="video/mp4"> </video><div></div><div class="vjs-poster" tabindex="-… | 1303799040 | ["linux", "programming", "tmux"] | Tmux is an alternative for screen. For anyone who doesn't know screen, it is a terminal multiplexer which means, it allow multiple windows in terminal. It can split your window into multiple panes (vertical/horizontal), detach a session which can be attached at a later time. Detach/Attach is very useful for running a job in a remote server without having to keep the ssh open the whole time. Tmux can be configured by ~/[.tmux.conf](https://github.com/amjith/_dotties/blob/master/tmux.conf) file. My prefix key is Ctrl-q. **Synchronizing panes:** If you want to send your keystrokes to all the panes in your tmux window: <prefix> :setw synchronize-panes In my case I do: Ctrl-q:setw synchronize-panes Play VideoPlayMuteCurrent Time 0:00/Duration Time 0:00Loaded: 0%Progress: 0%Stream TypeLIVERemaining Time -0:00 Playback Rate1Chapters* Chapters Subtitles* subtitles off Captions* captions off FullscreenThis is a modal window. Foreground --- White Black Red Green Blue Yellow Magenta Cyan --- Opaque Semi-Opaque Background --- White Black Red Green Blue Yellow Magenta Cyan --- Opaque Semi-Transparent Transparent Window --- White Black Red Green Blue Yellow Magenta Cyan --- Opaque Semi-Transparent Transparent Font Size 50% 75% 100% 125% 150% 175% 200% 300% 400% Text Edge Style None Raised Depressed Uniform Dropshadow Font Family Default Monospace Serif Proportional Serif Monospace Sans-Serif Proportional Sans-Serif Casual Script Small Caps Defaults Done [Download tmux.avi](https://phaven-prod.s3.amazonaws.com/files/video_part/asset/892959/n5ve_2I_-G11PyAOfsyCBSXHfW4/tmux.avi) This is immensely useful if you want to execute the same set of commands on multiple servers. | http://blog.amjith.com/synchronize-panes-in-tmux |
64 | Education from unlikely sources | <div class="posthaven-post-body">I've never understood the meaning of the term "Pearls before Swine" and never bothered to look it up (laziness mostly). I've chalked it up as an unfunny comics strip that is obscure. <p></p><div>But today I read a blog post by Linus (yes, the creator of Linux) about his experiences at a <a href="http://torvalds-family.blogspot.com/">Night before Oscar Party</a>. It is hilarious, you should go read it, NOW. The title of the blog was "Pearls before Swine". This time I decided to look up the meaning of that term and I don't regret doing so. I think it'll come in quite handy in the future. :)</div> <p></p><div>Pearls before Swine (from <a href="http://en.wikipedia.org/wiki/Pearls_Before_Swine">Wikipedia</a>): </div><p></p><blockquote class="gmail_quote"> things (such as pearls) should not be put in front of people (or in this case, swine) who do not appreciate their value</blockquote></div> | 1298928077 | [] | I've never understood the meaning of the term "Pearls before Swine" and never bothered to look it up (laziness mostly). I've chalked it up as an unfunny comics strip that is obscure. But today I read a blog post by Linus (yes, the creator of Linux) about his experiences at a [Night before Oscar Party](http://torvalds-family.blogspot.com/). It is hilarious, you should go read it, NOW. The title of the blog was "Pearls before Swine". This time I decided to look up the meaning of that term and I don't regret doing so. I think it'll come in quite handy in the future. :) Pearls before Swine (from [Wikipedia](http://en.wikipedia.org/wiki/Pearls_Before_Swine)): > things (such as pearls) should not be put in front of people (or in this case, swine) who do not appreciate their value | http://blog.amjith.com/education-from-unlikely-sources |
65 | Hiatus from Hapkido | <div class="posthaven-post-body"><p>After realizing that I only have 2 days per week (and weekends) to work on my side projects, I decided to axe one of my hobbies. Unfortunately Hapkido got kicked out (no pun intended) of my schedule. Sad day. I really enjoyed Hapkido and I hope I can get back to it once things settle down a little bit.</p> <p></p> <div>So what am I going to do on these free Wednesday nights? I have a few ideas:</div> <div> <ul> <li>Snowboarding</li> <li>Learn Javascript</li> <li>Learn Titanium and port <a href="http://code.google.com/p/ptimer/">pTimer</a> to Android and iOS.</li> </ul> </div> <div>Lets see how this turns out. </div></div> | 1297316280 | ["hapkido"] | After realizing that I only have 2 days per week (and weekends) to work on my side projects, I decided to axe one of my hobbies. Unfortunately Hapkido got kicked out (no pun intended) of my schedule. Sad day. I really enjoyed Hapkido and I hope I can get back to it once things settle down a little bit. So what am I going to do on these free Wednesday nights? I have a few ideas: * Snowboarding * Learn Javascript * Learn Titanium and port [pTimer](http://code.google.com/p/ptimer/) to Android and iOS. Lets see how this turns out. | http://blog.amjith.com/hiatus-from-hapkido |
66 | Strongest Family Member | <div class="posthaven-post-body"><p>I'm playing with Vian and Sempi. Vian comes at me swinging a plastic sword. I stop it with my hand and hold onto it, to prevent further assault. <br></p><p><b>Vian: </b>Appa is the strongest in the family.</p><p><b>Sempi: </b>No, Amma is the strongest.</p><p><b>Vian: </b>But Appa is bigger.</p><p><b>Sempi: </b>He is bigger but Amma has more muscles. So she's stronger.<br></p><p>I've got nothing to say, that's just the truth. <br></p></div> | 1584756434 | ["personal", "7yo", "sempi", "3yo", "vian"] | I'm playing with Vian and Sempi. Vian comes at me swinging a plastic sword. I stop it with my hand and hold onto it, to prevent further assault. **Vian:** Appa is the strongest in the family. **Sempi:** No, Amma is the strongest. **Vian:** But Appa is bigger. **Sempi:** He is bigger but Amma has more muscles. So she's stronger. I've got nothing to say, that's just the truth. | https://blog.amjith.com/strongest-family-member |
67 | Treat Others How You Want To Be Treated | <div class="posthaven-post-body"><p>Vian (3yo) is in the bathtub and I'm trying to get him to come out. Sempi (7yo) is already out and changing his clothes. I am losing my patience with Vian and he is losing his patience with this toy that he's trying balance on the rim of the bathtub. <br></p><p>After pleading with him for a while, I lost my patience and stormed out and turned off one of the lights in the bathroom. Although this didn't plunge the bathroom in darkness, this did darken the room just enough to cause Vian to yell and scream. Suddenly who comes running but Sempi. He asked in a compassionate tone "Vian are you ok? Is there anything I can do to help you?". <br></p><p>Clearly ashamed by my actions, I went back to the bathroom and got Vian out of the bathtub. I told Sempi that I'm proud of his actions and I wish I could learn from him. Sempi said in a serious voice, I could teach you. Here's his teaching: <br></p><p><b>Sometimes when things don't go according to your plan, you'll be tempted to do something bad to hurt the other person. But the way to control that is to remember that you should always treat others how you want to be treated. </b><br></p><p>He said the best way to practice this is to go to someplace new that I've never been to. In a new place, things won't go exactly as planned and I'll find myself often frustrated or angry. That's when I could practice being nice and not mean to everyone. He offered to go with me, so he can be there to support me. <br></p><p>I am speechless. My son is awesome!<br></p></div> | 1582178693 | ["personal", "7yo", "sempi", "3yo", "vian"] | Vian (3yo) is in the bathtub and I'm trying to get him to come out. Sempi (7yo) is already out and changing his clothes. I am losing my patience with Vian and he is losing his patience with this toy that he's trying balance on the rim of the bathtub. After pleading with him for a while, I lost my patience and stormed out and turned off one of the lights in the bathroom. Although this didn't plunge the bathroom in darkness, this did darken the room just enough to cause Vian to yell and scream. Suddenly who comes running but Sempi. He asked in a compassionate tone "Vian are you ok? Is there anything I can do to help you?". Clearly ashamed by my actions, I went back to the bathroom and got Vian out of the bathtub. I told Sempi that I'm proud of his actions and I wish I could learn from him. Sempi said in a serious voice, I could teach you. Here's his teaching: **Sometimes when things don't go according to your plan, you'll be tempted to do something bad to hurt the other person. But the way to control that is to remember that you should always treat others how you want to be treated.** He said the best way to practice this is to go to someplace new that I've never been to. In a new place, things won't go exactly as planned and I'll find myself often frustrated or angry. That's when I could practice being nice and not mean to everyone. He offered to go with me, so he can be there to support me. I am speechless. My son is awesome! | https://blog.amjith.com/treat-others-how-you-want-to-be-treated |
68 | LaTeX on Mac OS X | <div class="posthaven-post-body"><p>I used LaTeX when I was in school to create reports, presentation (using <a href="http://en.wikipedia.org/wiki/Beamer_(LaTeX)">beamer</a>) and even sometimes class notes and assignments. Recently when I was looking for a presentation program in Linux I was crestfallen by the lack of polish in OpenOffice Impress. So I created my <a href="/hands-on-into-git">presentation</a> for the Salt Lake Linux User Group in LaTeX and it looked professional (nothing surprising there).</p> <p></p> <div>But that was created on my tiny Netbook running Meego. I wanted to make some edits to it with my wife's MacBook, so I started looking around for LaTeX on Mac. I found <a href="http://www.tug.org/mactex/">MacTex</a> which completely took me by surprise, because the download size of the MacTex package was 1.6GB and the installed size on the computer was well over 3GB. It took me a good one hour to download, install and configure that thing. Seeing the 1.6GB zip file getting downloaded made me realize how much work has gone into LaTeX which I've always taken for granted.</div> <p></p> <div>I bow before thee LaTeX. </div></div> | 1292778960 | [] | I used LaTeX when I was in school to create reports, presentation (using [beamer](http://en.wikipedia.org/wiki/Beamer_(LaTeX))) and even sometimes class notes and assignments. Recently when I was looking for a presentation program in Linux I was crestfallen by the lack of polish in OpenOffice Impress. So I created my [presentation](/hands-on-into-git) for the Salt Lake Linux User Group in LaTeX and it looked professional (nothing surprising there). But that was created on my tiny Netbook running Meego. I wanted to make some edits to it with my wife's MacBook, so I started looking around for LaTeX on Mac. I found [MacTex](http://www.tug.org/mactex/) which completely took me by surprise, because the download size of the MacTex package was 1.6GB and the installed size on the computer was well over 3GB. It took me a good one hour to download, install and configure that thing. Seeing the 1.6GB zip file getting downloaded made me realize how much work has gone into LaTeX which I've always taken for granted. I bow before thee LaTeX. | http://blog.amjith.com/latex-on-mac-os-x |
69 | Ubuntu and I have some trust issues | <div class="posthaven-post-body"><p>I've been exclusively using Meego on my netbook and I was moderately happy with what it provided. So I did what any self-respecting hacker would do - I tried to make it better. Well, we all know how <strong>that</strong> usually ends. I managed to uninstall every single kernel in the system and rendered the system unbootable. Taking this as an opportunity I decided to try a grown-up OS. Enter Ubuntu into the picture.</p> <p></p> <div>I've heard nothing but great things about Ubuntu and I fuckin' hated it. Why? Because it was stealing all the limelight from the ever superior Mandriva (my favorite distro). So I got the installation process going which was smooth but surprisingly it didn't give me the option to keep my old partition, it was an all or nothing approach (grown up OS my ass). I had all my "stuff" backed up, so I decided to repartition my disk. It even detected my Broadcom wireless card and offered to install a proprietary driver for it. Wireless was working and the visual candy was stunning. I've never seen such a beautiful font set on my computer before. All the visual components looked hand crafted and the notifications were done with style. It was just a gorgeous piece of artwork. Visually stunning (if you didn't get that part already). </div> <p></p> <div>I was quite pleased with the decision to go with Ubuntu and was having some fleeting thoughts about replacing Mandriva on my desktop. Around 15 minutes in my playful prodding and poking, I was notified that Software Updates were available. After it successfully installed the updates and rebooted the computer (some Kernel updates were involved), I couldn't connect to the internet anymore. The network icon wouldn't show up on my system tray anymore. After some googling I managed to find the "Additional Drivers" program which installed the Broadcom Drivers once again. But this time it would show me the available networks but wouldn't connect to any of them. The system update had successfully screwed… | 1298273280 | ["linux", "Mandriva", "Ubuntu"] | I've been exclusively using Meego on my netbook and I was moderately happy with what it provided. So I did what any self-respecting hacker would do - I tried to make it better. Well, we all know how **that** usually ends. I managed to uninstall every single kernel in the system and rendered the system unbootable. Taking this as an opportunity I decided to try a grown-up OS. Enter Ubuntu into the picture. I've heard nothing but great things about Ubuntu and I fuckin' hated it. Why? Because it was stealing all the limelight from the ever superior Mandriva (my favorite distro). So I got the installation process going which was smooth but surprisingly it didn't give me the option to keep my old partition, it was an all or nothing approach (grown up OS my ass). I had all my "stuff" backed up, so I decided to repartition my disk. It even detected my Broadcom wireless card and offered to install a proprietary driver for it. Wireless was working and the visual candy was stunning. I've never seen such a beautiful font set on my computer before. All the visual components looked hand crafted and the notifications were done with style. It was just a gorgeous piece of artwork. Visually stunning (if you didn't get that part already). I was quite pleased with the decision to go with Ubuntu and was having some fleeting thoughts about replacing Mandriva on my desktop. Around 15 minutes in my playful prodding and poking, I was notified that Software Updates were available. After it successfully installed the updates and rebooted the computer (some Kernel updates were involved), I couldn't connect to the internet anymore. The network icon wouldn't show up on my system tray anymore. After some googling I managed to find the "Additional Drivers" program which installed the Broadcom Drivers once again. But this time it would show me the available networks but wouldn't connect to any of them. The system update had successfully screwed over the authentication routine for connecting to WPA2 networks. I tried to plug in my network c… | http://blog.amjith.com/ubuntu-and-i-have-some-trust-issues-tag-ubunt |
70 | Elevenses | <div class="posthaven-post-body"><p>One of my favorite items is sourdough toast with butter. This morning I decided to spread some jam on the toast as a treat. Vian enjoyed it quite a bit and came back for a second helping. <br></p><p><b>Vian:</b> Appa can you make me a loaf of jam? <br></p><p><b>Me: </b>You mean a slice, not a loaf.<br></p><p><b>Vian:</b> Oh, can I have a slice of jam?<br></p><p><b>Me:</b> Yes! Btw, it's a slice of bread with jam.</p><p><b>Vian: </b>Ok. (licking his finger distractedly).<br></p></div> | 1580670387 | ["personal", "3yo", "vian"] | One of my favorite items is sourdough toast with butter. This morning I decided to spread some jam on the toast as a treat. Vian enjoyed it quite a bit and came back for a second helping. **Vian:** Appa can you make me a loaf of jam? **Me:** You mean a slice, not a loaf. **Vian:** Oh, can I have a slice of jam? **Me:** Yes! Btw, it's a slice of bread with jam. **Vian:** Ok. (licking his finger distractedly). | https://blog.amjith.com/elevenses |
71 | Shopping for India Trip | <div class="posthaven-post-body">I'm getting ready for the India Trip in January and it is one hectic process. I'm getting all these gifts for my parents, brothers, cousins, uncles and the list keeps on growing. Perils of having a large loving family. One of these days, I'm going to make enough money to get all of them the gifts that I really want to give. <p></p><div>One of these days....</div></div> | 1292741585 | [] | I'm getting ready for the India Trip in January and it is one hectic process. I'm getting all these gifts for my parents, brothers, cousins, uncles and the list keeps on growing. Perils of having a large loving family. One of these days, I'm going to make enough money to get all of them the gifts that I really want to give. One of these days.... | http://blog.amjith.com/shopping-for-india-trip |
72 | Happiness ..... | <div class="posthaven-post-body"><p>My wife and I were in Burlington coat factory today and she finally found a pair of gloves that fits her stringent requirements. Her joy knew no bounds. I've never seen anyone so truly happy. She has been wearing them since we got out of the store and haven't taken them off. Its been more than 4 hours.</p> <p></p> <div>Reminds me of the time, I got my first <a href="http://en.wikipedia.org/wiki/Bokken">bokken</a> and carried it around everywhere. It was with me at all times, I had it while I was eating, playing, computering, walking around aimlessly etc. I even remember the threats she made if I brought the bokken with me to the bed and how I promptly ignored her and paid the price. Good times...</div></div> | 1292742000 | [] | My wife and I were in Burlington coat factory today and she finally found a pair of gloves that fits her stringent requirements. Her joy knew no bounds. I've never seen anyone so truly happy. She has been wearing them since we got out of the store and haven't taken them off. Its been more than 4 hours. Reminds me of the time, I got my first [bokken](http://en.wikipedia.org/wiki/Bokken) and carried it around everywhere. It was with me at all times, I had it while I was eating, playing, computering, walking around aimlessly etc. I even remember the threats she made if I brought the bokken with me to the bed and how I promptly ignored her and paid the price. Good times... | http://blog.amjith.com/happiness |
73 | Back from Thanksgiving | <div class="posthaven-post-body">We went to Bryce and Zions for Thanksgiving weekend. It was beautiful and freezing. I think at one time, the car thermometer read 2 degrees Fahrenheit. But we had a lot of fun. I found out that I'm really good at pictionary, well not at winning but making people break into paroxysms of laughter.<p></p><div>Well everyone has a different talent. </div></div> | 1291101074 | [] | We went to Bryce and Zions for Thanksgiving weekend. It was beautiful and freezing. I think at one time, the car thermometer read 2 degrees Fahrenheit. But we had a lot of fun. I found out that I'm really good at pictionary, well not at winning but making people break into paroxysms of laughter.Well everyone has a different talent. | http://blog.amjith.com/back-from-thanksgiving |
74 | Tattling | <div class="posthaven-post-body"><p>Vian: Amma, the roomba is not cleaning anything. <br></p><p>Yoshi: Let me check.</p><p>She finds lego pieces and strings blocking the Roomba wheels. <br></p><p>Yoshi: Thank you, Vian. You're right it wasn't picking up anything. <br></p><p>Me: Vian, did you just tattle on Roomba to your mother? <br></p><p><br></p></div> | 1569792523 | ["personal", "3yo", "vian"] | Vian: Amma, the roomba is not cleaning anything. Yoshi: Let me check. She finds lego pieces and strings blocking the Roomba wheels. Yoshi: Thank you, Vian. You're right it wasn't picking up anything. Me: Vian, did you just tattle on Roomba to your mother? | http://blog.amjith.com/tattling |
75 | Kids vs Adults | <div class="posthaven-post-body"><p>It is raining in San Jose, there are little puddles of water on the sidewalk. <br></p><p>I'm walking with Vian in our neighborhood. I notice a small puddle and step over it to make sure I don't get my shoes wet. </p><p>Vian walks right through the puddle. Stops. Turns around and jumps in the puddle for good measure and then runs over to hold my fingers as we proceed with our walk. <br></p><p>Wet shoes are a small price to pay for the joy of jumping in puddles. It is wonderful being a kid. <br></p></div> | 1575234981 | ["vian", "3yo", "personal"] | It is raining in San Jose, there are little puddles of water on the sidewalk. I'm walking with Vian in our neighborhood. I notice a small puddle and step over it to make sure I don't get my shoes wet. Vian walks right through the puddle. Stops. Turns around and jumps in the puddle for good measure and then runs over to hold my fingers as we proceed with our walk. Wet shoes are a small price to pay for the joy of jumping in puddles. It is wonderful being a kid. | https://blog.amjith.com/kids-vs-adults |
76 | !!con west | <div class="posthaven-post-body"><p>I had the pleasure of attending <a href="http://bangbangcon.com/west/" target="_blank">!!con west</a> last weekend. I met a lot of incredible people and listened to talks that rekindled my joy in programming. <br></p><p>I took out my trusty <a href="https://www.stabilo.com/com/products/writing/fineliner-felt-tip-pens/stabilo-point-88/" target="_blank">Stabilo point 88</a> and started taking notes. The <a href="https://tifftseng.com/" target="_blank">person</a> sitting next to me complimented my choice of pen. I got very excited that someone recognized the pen and shared my interest in stationery. She then proceeded to show me her stationery collection from Japan (tiny scissors, a permanent marker, multicolor highlighter, and a twist top eraser). It was awesome! There is an indescribable joy in finding out that someone else shares your weird and quirky interests.<br></p><p>I got caught up with Thomas (author of <a href="https://curtsies.readthedocs.io/en/latest/" target="_blank">Curtsies</a> and a fellow lover of awesome CLIs). He gave me a demo of <a href="https://observablehq.com" target="_blank" title="Link: https://observablehq.com">ObservableHQ</a> which was very cool.</p><p>I met Aaron Wood who gave an engaging and entertaining talk about ancient Greek mathematics. I had a strange feeling that I knew him from somewhere else. Turns out he went to the University of Utah (my alma mater) and we both worked as math tutors in the same department nearly 13 years ago. What a small world. <br></p><p>There were a ton of interesting talks at the conference. Here's a synopsis of the ones I remember. <br></p><p><em><b>Wolf, Goat, and Cabbage In Two Styles!!</b></em></p><p><em></em>A brief showcase of two very different languages (!?) to solve the logic puzzle of transporting a Wolf, Goat, and Cabbage across a river. <em></em><em><b><br></b></em></p><p><em><b>The Ancient Greeks And Their Restless Cattle</b></em></p><p><em></em>A wonderfully hilarious talk about mathematics d… | 1583128592 | ["tech", "conference"] | I had the pleasure of attending [!!con west](http://bangbangcon.com/west/) last weekend. I met a lot of incredible people and listened to talks that rekindled my joy in programming. I took out my trusty [Stabilo point 88](https://www.stabilo.com/com/products/writing/fineliner-felt-tip-pens/stabilo-point-88/) and started taking notes. The [person](https://tifftseng.com/) sitting next to me complimented my choice of pen. I got very excited that someone recognized the pen and shared my interest in stationery. She then proceeded to show me her stationery collection from Japan (tiny scissors, a permanent marker, multicolor highlighter, and a twist top eraser). It was awesome! There is an indescribable joy in finding out that someone else shares your weird and quirky interests. I got caught up with Thomas (author of [Curtsies](https://curtsies.readthedocs.io/en/latest/) and a fellow lover of awesome CLIs). He gave me a demo of [ObservableHQ](https://observablehq.com "Link: https://observablehq.com") which was very cool. I met Aaron Wood who gave an engaging and entertaining talk about ancient Greek mathematics. I had a strange feeling that I knew him from somewhere else. Turns out he went to the University of Utah (my alma mater) and we both worked as math tutors in the same department nearly 13 years ago. What a small world. There were a ton of interesting talks at the conference. Here's a synopsis of the ones I remember. ***Wolf, Goat, and Cabbage In Two Styles!!*** A brief showcase of two very different languages (!?) to solve the logic puzzle of transporting a Wolf, Goat, and Cabbage across a river. ***The Ancient Greeks And Their Restless Cattle*** A wonderfully hilarious talk about mathematics during the era of Archimedes and how it was solved with modern techniques before and after computers***.*** Aaron did a great job of explaining the math behind Pell's equation and walked us through the history of various attempts at a solution and finally showed an implementation of the solution in … | https://blog.amjith.com/con-west |
77 | Examples are Awesome | <div class="posthaven-post-body"><p>There are two things I look for whenever I check out an Opensource project or library that I want to use. <br></p><p>1. Screenshots (A picture is worth a thousand words). <br></p><p>2. Examples (Don't tell me what to do, show me how to do it). <br></p><p>Having a fully working example (or many examples) helps me shape my thought process. <br></p><p>Here are a few projects that are excellent examples of this. <br></p><p>1. <a href="https://github.com/prompt-toolkit/python-prompt-toolkit" target="_blank" title="Link: https://github.com/prompt-toolkit/python-prompt-toolkit">https://github.com/prompt-toolkit/python-prompt-toolkit</a></p><p>A CLI framework for building rich command line interfaces. The project comes with a collection of small self-sufficient examples that showcase every feature available in the framework and a nice little tutorial. <br></p><p>2. <a href="https://github.com/coleifer/peewee" target="_blank" title="Link: https://github.com/coleifer/peewee">https://github.com/coleifer/peewee</a></p><p>A small ORM for Python that ships with multiple web projects to showcase how to use the ORM effectively. I'm always overwhelmed by SqlAlchemy's documentation site. PeeWee is a breath of fresh air with a clear purpose and succinct documentation.<br></p><p>3. <a href="https://github.com/coleifer/huey" target="_blank">https://github.com/coleifer/huey</a></p><p>An asynchronous task queue for Python that is simpler than Celery and more featureful than RQ. This project also ships with an awesome set of examples that show how to integrate the task queue with Django, Flask or standalone use case. <br></p><p>The beauty of these examples is that they're self-documenting and show us how the different pieces in the library work with each other as well as external code outside of their library such as Flask, Django, Asyncio etc. <br></p><p>Examples save the users hours of sifting through documentation to piece together how to use a library. <br></p><p>Please include example… | 1570414510 | ["python", "programming"] | There are two things I look for whenever I check out an Opensource project or library that I want to use. 1. Screenshots (A picture is worth a thousand words). 2. Examples (Don't tell me what to do, show me how to do it). Having a fully working example (or many examples) helps me shape my thought process. Here are a few projects that are excellent examples of this. 1. [https://github.com/prompt-toolkit/python-prompt-toolkit](https://github.com/prompt-toolkit/python-prompt-toolkit "Link: https://github.com/prompt-toolkit/python-prompt-toolkit") A CLI framework for building rich command line interfaces. The project comes with a collection of small self-sufficient examples that showcase every feature available in the framework and a nice little tutorial. 2. [https://github.com/coleifer/peewee](https://github.com/coleifer/peewee "Link: https://github.com/coleifer/peewee") A small ORM for Python that ships with multiple web projects to showcase how to use the ORM effectively. I'm always overwhelmed by SqlAlchemy's documentation site. PeeWee is a breath of fresh air with a clear purpose and succinct documentation. 3. <https://github.com/coleifer/huey> An asynchronous task queue for Python that is simpler than Celery and more featureful than RQ. This project also ships with an awesome set of examples that show how to integrate the task queue with Django, Flask or standalone use case. The beauty of these examples is that they're self-documenting and show us how the different pieces in the library work with each other as well as external code outside of their library such as Flask, Django, Asyncio etc. Examples save the users hours of sifting through documentation to piece together how to use a library. Please include examples in your project. | https://blog.amjith.com/examples-are-awesome |
78 | Night Snowboarding @ Sundance | <div class="posthaven-post-body">We went snowboarding for the first time this season. This is the first time I've hit the slopes after 5pm. It wasn't bad at all, the lifts were empty and the slopes were free. <p></p> <div>Too bad I don't know how to snowboard well enough, because I kept falling on my bum. Yoshi hasn't figured out if she is regular footed or goofy footed and she kept trying both, hope she hasn't confused her brain beyond repair. <br><p></p> <div>I'm excited to go again soon. Maybe this time I'll get those damn toe turn to work without destroying my bum.</div> </div></div> | 1293385810 | ["snowboarding"] | We went snowboarding for the first time this season. This is the first time I've hit the slopes after 5pm. It wasn't bad at all, the lifts were empty and the slopes were free. Too bad I don't know how to snowboard well enough, because I kept falling on my bum. Yoshi hasn't figured out if she is regular footed or goofy footed and she kept trying both, hope she hasn't confused her brain beyond repair. I'm excited to go again soon. Maybe this time I'll get those damn toe turn to work without destroying my bum. | http://blog.amjith.com/night-snowboarding-sundance |
79 | Much ado about nothing | <div class="posthaven-post-body">Some of the news papers claimed this is the worst blizzard in Utah since 2001. My work sent all of us home earlier than usual. My friend advised me to stock up some food, in case I'm stuck in the house without emergency supply. <p></p><div>I was pretty <a href="/i-love-snow-storm">excited </a>with anticipation, got some tea and curled up in front of the computer. I was all ready to witness a downpour that was going to rival the "<a href="http://www.imdb.com/title/tt0319262/">Day after tomorrow</a>". </div> <p></p><div>What followed was a snow fizzle that didn't even leave a trace on my car this morning. Anti-climatic of epic proportions, which was in the order of Apple announcing</div><div> <div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[520209]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image posthaven-medium-only" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892929/dEECzav6PnTIGvkShZd7p21fwxA/large_Apple-iTunes-Exciting-Announce.png" data-posthaven-state="processed" data-medium-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892929/dEECzav6PnTIGvkShZd7p21fwxA/medium_Apple-iTunes-Exciting-Announce.png" data-medium-width="480" data-medium-height="200" data-large-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892929/dEECzav6PnTIGvkShZd7p21fwxA/large_Apple-iTunes-Exciting-Announce.png" data-large-width="480" data-large-height="200" data-thumb-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892929/dEECzav6PnTIGvkShZd7p21fwxA/thumb_Apple-iTunes-Exciting-Announce.png" data-thumb-width="200" data-thumb-height="200" data-xlarge-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892929/dEECzav6PnTIGvkShZd7p21fwxA/xlarge_Apple-iTunes-Exciting-Announce.png" data-xlarge-width="" data-xlarge-height="" data-… | 1290619989 | ["snow"] | Some of the news papers claimed this is the worst blizzard in Utah since 2001. My work sent all of us home earlier than usual. My friend advised me to stock up some food, in case I'm stuck in the house without emergency supply. I was pretty [excited](/i-love-snow-storm) with anticipation, got some tea and curled up in front of the computer. I was all ready to witness a downpour that was going to rival the "[Day after tomorrow](http://www.imdb.com/title/tt0319262/)". What followed was a snow fizzle that didn't even leave a trace on my car this morning. Anti-climatic of epic proportions, which was in the order of Apple announcing ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/892929/dEECzav6PnTIGvkShZd7p21fwxA/large_Apple-iTunes-Exciting-Announce.png) | http://blog.amjith.com/much-ado-about-nothing |
80 | Hands on Intro - Git | <div class="posthaven-post-body"><p>Today I presented in the Salt Lake Linux User Group meeting. The topic was "Hands on Intro - Git". It went well and I actually enjoyed it quite a bit. I choked twice once while trying to explain how to git apply patches that you receive via email, but then recovered from it with some help from the audience. But the second time I choked while trying to explain how to pull from multiple remote repositories, I couldn't recover from that. I do that so rarely it never occurred to me. Oh well, the first time is the hardest.</p> <div> </div> <div>Off to prepare for the talk tomorrow at the Utah Python Group. I'm presenting "Hands on Into - PyQt4". </div> <div> </div> <div>Here are the slides from that talk. LaTeX Source: <a href="https://github.com/amjith/git_present" rel="nofollow">https://github.com/amjith/git_present</a> </div> <p> </p> <p> </p><div class="posthaven-file posthaven-file-document posthaven-file-state-processed" id="posthaven_document_892928" data-box-session-id="1e9ed91e500146da94cc83dd263e1f7a" data-pdf-url="https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892928/KzUB0C9SlbggTKknuietZWgaso8/git_present.pdf"><object data="https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892928/KzUB0C9SlbggTKknuietZWgaso8/git_present.pdf" type="application/pdf" width="100%" height="800px"> </object> <a class="posthaven-file-download" download="" href="https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892928/KzUB0C9SlbggTKknuietZWgaso8/git_present.pdf">Download git_present.pdf</a> </div> <p></p></div> | 1291875480 | ["git", "linux"] | Today I presented in the Salt Lake Linux User Group meeting. The topic was "Hands on Intro - Git". It went well and I actually enjoyed it quite a bit. I choked twice once while trying to explain how to git apply patches that you receive via email, but then recovered from it with some help from the audience. But the second time I choked while trying to explain how to pull from multiple remote repositories, I couldn't recover from that. I do that so rarely it never occurred to me. Oh well, the first time is the hardest. Off to prepare for the talk tomorrow at the Utah Python Group. I'm presenting "Hands on Into - PyQt4". Here are the slides from that talk. LaTeX Source: <https://github.com/amjith/git_present> [Download git\_present.pdf](https://phaven-prod.s3.amazonaws.com/files/document_part/asset/892928/KzUB0C9SlbggTKknuietZWgaso8/git_present.pdf) | http://blog.amjith.com/hands-on-into-git |
81 | Creative Insult | <div class="posthaven-post-body"><p>Imagine a chubby 3 yr old with stubby legs and a cute smile. That's Vian. Vian can be a charming little kid when he chooses. <br></p><p>This morning I was helping him use the restroom. After he washed his hands I offered him a towel to dry himself. He refused the offer and decides to wipe his hands on his shirt. I told him with a hint of frustration that he should use a towel and not wipe his hands on his shirt. He turns around, looks me in the eye and says:<br></p><p><b>"No I won't, you fuzzy little mammal"</b> and walks away while I stand there dumbfounded. <br></p><p>I'm lucky to say that I was present when a new insult was birthed into this world.<br></p></div> | 1576261157 | ["personal", "3yo", "vian"] | Imagine a chubby 3 yr old with stubby legs and a cute smile. That's Vian. Vian can be a charming little kid when he chooses. This morning I was helping him use the restroom. After he washed his hands I offered him a towel to dry himself. He refused the offer and decides to wipe his hands on his shirt. I told him with a hint of frustration that he should use a towel and not wipe his hands on his shirt. He turns around, looks me in the eye and says: **"No I won't, you fuzzy little mammal"** and walks away while I stand there dumbfounded. I'm lucky to say that I was present when a new insult was birthed into this world. | https://blog.amjith.com/creative-insult |
82 | The Floss! | <div class="posthaven-post-body"><p>Dancing is in my <a href="https://blog.amjith.com/dancing-with-the-dorks" target="_blank" title="Link: https://blog.amjith.com/dancing-with-the-dorks">blood</a>. <br></p><p>Yoshi decides that the kids need to learn how to dance properly(?). So she starts teaching them "<a href="https://www.wikihow.com/Do-the-Floss-Dance" target="_blank">The Floss</a>". Not to be outdone by her, I decide to show the kids how to do the Floss correctly. <br></p><p>As I start to get into the groove, Vian runs over and turns the light off, just as Yoshi remarks "Yeah, nobody needs to see that". <br></p><p>Tough crowd!<br></p></div> | 1570833042 | ["personal", "3yo", "vian"] | Dancing is in my [blood](https://blog.amjith.com/dancing-with-the-dorks "Link: https://blog.amjith.com/dancing-with-the-dorks"). Yoshi decides that the kids need to learn how to dance properly(?). So she starts teaching them "[The Floss](https://www.wikihow.com/Do-the-Floss-Dance)". Not to be outdone by her, I decide to show the kids how to do the Floss correctly. As I start to get into the groove, Vian runs over and turns the light off, just as Yoshi remarks "Yeah, nobody needs to see that". Tough crowd! | https://blog.amjith.com/the-floss |
83 | Exhausted | <div class="posthaven-post-body">My body is aching from Hapkido. My head hurts from the constant context-switching. My brain is tired from the messy debugging I had to do at work. <p></p><div>But life must go on. <p></p> <div>I have to prepare two different presentations for next week. A Git presentation for the Linux User Group and a PyQt4 presentation for the UtahPython Group. I think I can manage it. </div> </div><p></p><blockquote class="gmail_quote"> But I have promises to keep,</blockquote><blockquote class="gmail_quote"> And miles to go before I sleep. </blockquote></div> | 1291269425 | [] | My body is aching from Hapkido. My head hurts from the constant context-switching. My brain is tired from the messy debugging I had to do at work. But life must go on. I have to prepare two different presentations for next week. A Git presentation for the Linux User Group and a PyQt4 presentation for the UtahPython Group. I think I can manage it. > But I have promises to keep, > And miles to go before I sleep. | http://blog.amjith.com/exhausted |
84 | Five hours of Aikido and Javascript | <div class="posthaven-post-body">It was a good day for Aikido. We started at 10am and went till 4pm with an hour break. My joints are sore but my mind is exuberant. <p></p><div>I actually managed to get more than 2 hours of Javascript learning after that. I'm quite impressed by the features of Javascript. Passing a function to another function as a parameter, returning a function, a function inside a function, anonymous functions (lambdas), wow, its a surprisingly powerful language for doing web development. I haven't even reached the section about closures yet. </div> <p></p><div>I'm a little blown away by Javascript. </div><p></p><div><a href="http://jqfundamentals.com/book/">http://jqfundamentals.com/book/</a></div></div> | 1297570220 | ["aikido", "programming"] | It was a good day for Aikido. We started at 10am and went till 4pm with an hour break. My joints are sore but my mind is exuberant. I actually managed to get more than 2 hours of Javascript learning after that. I'm quite impressed by the features of Javascript. Passing a function to another function as a parameter, returning a function, a function inside a function, anonymous functions (lambdas), wow, its a surprisingly powerful language for doing web development. I haven't even reached the section about closures yet. I'm a little blown away by Javascript. <http://jqfundamentals.com/book/> | http://blog.amjith.com/five-hours-of-aikido-and-javascript |
85 | Captain Underpants - Potty Adventures - 2 | <div class="posthaven-post-body"><p>When we were in Italy, we visited the Ufizzi museum and saw a lot of old world statues. There was one statue of a warrior holding a shield in his hand. I told the kids that it is Captain Italy who happens to be the cousin of Captain America. Obviously, neither of them believed me and Sempi groaned at my lame joke. <br></p><p>Recently Vian started <a href="http://blog.amjith.com/potty-training-adventures-i">potty training</a>. He's proud of wearing his underwear and strikes a pose every now and then. <br></p><p>Me: Vian you look like Captain Underpants.</p><p>Vian: No Appa. I'm like Captain Italy, remember. <br></p><p>Me: Haha. Was Captain Italy wearing underpants? <br></p><p>Vian: No Appa. Captain Italy was wearing his penis. <br></p><p>Of course, I forgot that the statue was naked. All the statues were naked. <br></p></div> | 1565749918 | ["personal", "3yo", "vian"] | When we were in Italy, we visited the Ufizzi museum and saw a lot of old world statues. There was one statue of a warrior holding a shield in his hand. I told the kids that it is Captain Italy who happens to be the cousin of Captain America. Obviously, neither of them believed me and Sempi groaned at my lame joke. Recently Vian started [potty training](http://blog.amjith.com/potty-training-adventures-i). He's proud of wearing his underwear and strikes a pose every now and then. Me: Vian you look like Captain Underpants. Vian: No Appa. I'm like Captain Italy, remember. Me: Haha. Was Captain Italy wearing underpants? Vian: No Appa. Captain Italy was wearing his penis. Of course, I forgot that the statue was naked. All the statues were naked. | http://blog.amjith.com/captain-underpants-potty-adventures-2 |
86 | Monkey Bar | <div class="posthaven-post-body"><p>Sempi is a big fan of Leonardo Da Vinci. Ever since we got back from Italy he's been talking about the various inventions of Leonardo.<br></p><p>Earlier today he was playing in the park after school. Apparently, he fell down from the monkey bars trying to do something brave. Yoshi took him to the ER and the doctors announced he has a small fracture and put his arm in a sling. <br></p><p>He's quite despondent about the whole ordeal and told me that he wished he hadn't tried that special monkey bar maneuver. I reassured him that his sling is a badge of honor, it is a sign of bravery, it shows that he is someone who pushes the boundaries. <br></p><p>Me: Do you know who else is the kind of person who pushed boundaries? <br></p><p>Sempi: Who?</p><p>Me: Leonardo. I bet he wore a sling many times in his life. <br></p><p>Sempi: Yeah. But he probably knew how to use a monkey bar though. <br></p><p>Me: LOL!!<br></p><p>I have to agree with him on that one.<br></p></div> | 1567830725 | ["6yo", "personal", "sempi"] | Sempi is a big fan of Leonardo Da Vinci. Ever since we got back from Italy he's been talking about the various inventions of Leonardo. Earlier today he was playing in the park after school. Apparently, he fell down from the monkey bars trying to do something brave. Yoshi took him to the ER and the doctors announced he has a small fracture and put his arm in a sling. He's quite despondent about the whole ordeal and told me that he wished he hadn't tried that special monkey bar maneuver. I reassured him that his sling is a badge of honor, it is a sign of bravery, it shows that he is someone who pushes the boundaries. Me: Do you know who else is the kind of person who pushed boundaries? Sempi: Who? Me: Leonardo. I bet he wore a sling many times in his life. Sempi: Yeah. But he probably knew how to use a monkey bar though. Me: LOL!! I have to agree with him on that one. | http://blog.amjith.com/monkey-bar |
87 | Conversations with a 2 yo | <div class="posthaven-post-body"><p>We are at the dining table. I take out the croissant from the bag and place it on a plate in front of Vian. <br></p><p>Vian: Appa, what kind of "cossant" is it? <br></p><p>Me: It's a plain croissant, Vian.</p><p>Vian: No. It's a bum-bum "cossant". <br></p><p>Me: Huh? <br></p><p>Vian: Look it (pointing to his misshapen croissant that looks like a butt). <br></p><p>You win this round, Vian.<br></p></div> | 1556494225 | ["personal", "2yo", "vian"] | We are at the dining table. I take out the croissant from the bag and place it on a plate in front of Vian. Vian: Appa, what kind of "cossant" is it? Me: It's a plain croissant, Vian. Vian: No. It's a bum-bum "cossant". Me: Huh? Vian: Look it (pointing to his misshapen croissant that looks like a butt). You win this round, Vian. | http://blog.amjith.com/conversations-with-a-2-yo-1 |
88 | Potty Training Adventures - I | <div class="posthaven-post-body"><p>Vian is 3 years old which is the minimum age required in this family to be eligible for big boy underwear. So naturally, we started potty training him this week. <br></p><p>He's come a long way since Monday and it is going very well. He does get frustrated by the inconvenience of having to stop playing just to empty his bladder. This morning he declared <b>"I need to wear diapers or else I'm not going to eat </b><b>anymore</b><b>!".</b></p><p>A hunger strike! I guess reading all those books about <a href="http://blog.amjith.com/relatives" title="Link: http://blog.amjith.com/relatives">Gandhi</a> is having an effect on him. <br></p></div> | 1564811617 | ["personal", "3yo", "vian"] | Vian is 3 years old which is the minimum age required in this family to be eligible for big boy underwear. So naturally, we started potty training him this week. He's come a long way since Monday and it is going very well. He does get frustrated by the inconvenience of having to stop playing just to empty his bladder. This morning he declared **"I need to wear diapers or else I'm not going to eat** **anymore****!".** A hunger strike! I guess reading all those books about [Gandhi](http://blog.amjith.com/relatives "Link: http://blog.amjith.com/relatives") is having an effect on him. | http://blog.amjith.com/potty-training-adventures-i |
89 | Punch Line | <div class="posthaven-post-body"><p>I sometimes share clean adult jokes that are too clever for a 2 year old to grasp. Sometimes it is fun to see the confused look on his face when he sees me cracking up on my own jokes. Yes, I laugh at my own jokes, moving on. <br></p><p>We're hanging out at a coffee shop and I start with the setup for a great joke. <br></p><p>Me: Vian, did you know that humans eat more bananas than monkeys?</p><p>Vian: What? They eat monkeys?</p><p>Me: LOL!! Way to ruin the punchline man.</p><p><br></p></div> | 1556494532 | ["personal", "2yo", "vian"] | I sometimes share clean adult jokes that are too clever for a 2 year old to grasp. Sometimes it is fun to see the confused look on his face when he sees me cracking up on my own jokes. Yes, I laugh at my own jokes, moving on. We're hanging out at a coffee shop and I start with the setup for a great joke. Me: Vian, did you know that humans eat more bananas than monkeys? Vian: What? They eat monkeys? Me: LOL!! Way to ruin the punchline man. | http://blog.amjith.com/punch-line |
90 | Sorry!? | <div class="posthaven-post-body"><div> <div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[1461640]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2307501/z5dhjLrybwFBTRn0DW1hUQzyBG8/large_index.jpg" data-posthaven-state="processed" data-medium-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2307501/z5dhjLrybwFBTRn0DW1hUQzyBG8/medium_index.jpg" data-medium-width="800" data-medium-height="600" data-large-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2307501/z5dhjLrybwFBTRn0DW1hUQzyBG8/large_index.jpg" data-large-width="960" data-large-height="720" data-thumb-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2307501/z5dhjLrybwFBTRn0DW1hUQzyBG8/thumb_index.jpg" data-thumb-width="200" data-thumb-height="200" data-xlarge-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2307501/z5dhjLrybwFBTRn0DW1hUQzyBG8/xlarge_index.jpg" data-xlarge-width="960" data-xlarge-height="720" data-orig-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2307501/z5dhjLrybwFBTRn0DW1hUQzyBG8/index.jpg" data-orig-width="960" data-orig-height="720" data-posthaven-id="2307501"> </p> </div> </div> </div><div>Vian and I are playing legos. I accidentally drop a lego piece from the table, we both bend down to get it and bonk our heads. <br> </div><div><br></div><div>Me: I am sorry, Vian.</div><div>Vian: (rubbing his head) No appa, I am sorry. <br> </div><div>Me: I guess we're both sorry. :)</div><div>Vian: No appa. I AM SAD, SO I AM SORRY (loudly).<br> </div><div>Me: Ok. Ok you're sorry. <br> </div><div><br></div><div><br></div></div> | 1564949373 | ["personal", "3yo", "vian"] | ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2307501/z5dhjLrybwFBTRn0DW1hUQzyBG8/large_index.jpg) Vian and I are playing legos. I accidentally drop a lego piece from the table, we both bend down to get it and bonk our heads. Me: I am sorry, Vian.Vian: (rubbing his head) No appa, I am sorry. Me: I guess we're both sorry. :)Vian: No appa. I AM SAD, SO I AM SORRY (loudly). Me: Ok. Ok you're sorry. | http://blog.amjith.com/sorry |
91 | Got Problems? | <div class="posthaven-post-body"><p>Sempi (my 6yo son) and I have this tradition of sharing our problems and asking each other's opinion on how to solve it. We do this while we walk to his school. We've been doing this since he was 3. Here's an example from Portland.<br></p><p>Me: When I bike to work, I have to wait a long time for the elevator.</p><p>Sempi (3yo): You should just build a ramp to your 28th floor, so you can just bike all the way up. <br></p><p>Me: Alrighty then. <br></p><p>Back to present day, I was discussing a problem with him about my work. <br></p><p>Me: I have this big presentation coming up and I'm nervous.</p><p>Sempi: Why?</p><p>Me: There's going to be VPs and an Executive attending this presentation. So I'm anxious about it. <br></p><p>(Sempi thinks for a while)</p><p>Sempi: There is a fire pole at the playground and I get nervous about going down that pole. What helps me is, I don't think about it, I just do it. So you should do the same. Don't think about it, just do it. <br></p><p>Me: Whoa! You know that's actually pretty good advice. <br></p><p>I'm happy to report that I took his advice and I kicked butt. <br></p></div> | 1550807393 | ["personal", "6yo", "sempi"] | Sempi (my 6yo son) and I have this tradition of sharing our problems and asking each other's opinion on how to solve it. We do this while we walk to his school. We've been doing this since he was 3. Here's an example from Portland. Me: When I bike to work, I have to wait a long time for the elevator. Sempi (3yo): You should just build a ramp to your 28th floor, so you can just bike all the way up. Me: Alrighty then. Back to present day, I was discussing a problem with him about my work. Me: I have this big presentation coming up and I'm nervous. Sempi: Why? Me: There's going to be VPs and an Executive attending this presentation. So I'm anxious about it. (Sempi thinks for a while) Sempi: There is a fire pole at the playground and I get nervous about going down that pole. What helps me is, I don't think about it, I just do it. So you should do the same. Don't think about it, just do it. Me: Whoa! You know that's actually pretty good advice. I'm happy to report that I took his advice and I kicked butt. | http://blog.amjith.com/got-problems |
92 | Manners my boy, manners | <div class="posthaven-post-body"><p>This happened a few weeks ago. The kids are having a funtime playing with their mom. I enter the room, which usually sets off the anxiety for Vian.</p><p>Vian:<a href="http://blog.amjith.com/answer-me" target="_blank"> I don't need you</a>, appa. <br></p><p>Yoshi: That's not very nice.</p><p>Vian: Go away, appa.</p><p>Yoshi: Can you say something nice to appa? <br></p><p>Vian: Appa, can you pleeease go away?</p><p>Me: Thank you! That's much better. </p><p><br></p></div> | 1549229136 | ["personal", "2yo", "vian"] | This happened a few weeks ago. The kids are having a funtime playing with their mom. I enter the room, which usually sets off the anxiety for Vian. Vian: [I don't need you](http://blog.amjith.com/answer-me), appa. Yoshi: That's not very nice. Vian: Go away, appa. Yoshi: Can you say something nice to appa? Vian: Appa, can you pleeease go away? Me: Thank you! That's much better. | http://blog.amjith.com/manners-my-boy-manners |
93 | Relatives | <div class="posthaven-post-body"><p>Some nights I read a book about Gandhi to Sempi for bedtime. There is an incident in Gandhi's life when he's thrown out of a first-class coach in South Africa because he is not white. I told Sempi that it was an injustice and it doesn't happen anymore. He listened intently and nodded approvingly. The next night I'm reading a comic about superheros and he asks me, "How come everyone in Justice League is white?". <br></p><p>I stuttered to come up with an answer at that moment, cursing myself for introducing him to the concept of race.</p><p>Since then he's asked me to read the Gandhi book many times and we talk about the struggles, non-violence and civil disobedience. <br></p><p>Recently, his elementary school teacher did a fantastic job of introducing the struggles of Martin Luther King Jr. He was excited to learn about MLK and how he learned some of the techniques from Gandhi and Thoreau. So naturally, we bought a new bedtime book about MLK. <br></p><p>One night we had this exchange. <br></p><p>Sempi: Appa, how did the first person came into existence.</p><p>Me: (I was gearing up to talk about evolution, Adam and Genesis).</p><p>Sempi: Appa, if there was a single person in the beginning, then we all came from that person.</p><p>Me: (excitedly) That's true. Everyone in the world is related. You're probably related to Ms. Cochran (his elementary shcool teacher). <br></p><p>Sempi: (giggles) Hehe. It also means that Martin Luther King could be my relative. Hehe.</p><p>Me: Absolutely!! You know MLK and Gandhi were probably your great great grandfathers. <br></p><p><br></p><p>That's my son. :D<br></p></div> | 1549835280 | ["personal", "6yo", "sempi"] | Some nights I read a book about Gandhi to Sempi for bedtime. There is an incident in Gandhi's life when he's thrown out of a first-class coach in South Africa because he is not white. I told Sempi that it was an injustice and it doesn't happen anymore. He listened intently and nodded approvingly. The next night I'm reading a comic about superheros and he asks me, "How come everyone in Justice League is white?". I stuttered to come up with an answer at that moment, cursing myself for introducing him to the concept of race. Since then he's asked me to read the Gandhi book many times and we talk about the struggles, non-violence and civil disobedience. Recently, his elementary school teacher did a fantastic job of introducing the struggles of Martin Luther King Jr. He was excited to learn about MLK and how he learned some of the techniques from Gandhi and Thoreau. So naturally, we bought a new bedtime book about MLK. One night we had this exchange. Sempi: Appa, how did the first person came into existence. Me: (I was gearing up to talk about evolution, Adam and Genesis). Sempi: Appa, if there was a single person in the beginning, then we all came from that person. Me: (excitedly) That's true. Everyone in the world is related. You're probably related to Ms. Cochran (his elementary shcool teacher). Sempi: (giggles) Hehe. It also means that Martin Luther King could be my relative. Hehe. Me: Absolutely!! You know MLK and Gandhi were probably your great great grandfathers. That's my son. :D | http://blog.amjith.com/relatives |
94 | Good people | <div class="posthaven-post-body"><p>Sempi and I read bedtime books together and discuss the story before he goes to sleep. <br><br>The story we read had a mention of illegal drugs. Apparently he didn't know what drugs were. So we discussed what drugs were and how some bad guys can sell drugs to victims and why it is illegal.<br><br>Suddenly Sempi drops this nugget of wisdom.<br><br>People are always born to be strong and good. No one is born to be weak or evil.<br></p><p>Friends who know me well, know that I strongly believe "people are generally good". I guess that belief is a genetic trait.<br></p></div> | 1553224256 | ["personal", "6yo", "sempi"] | Sempi and I read bedtime books together and discuss the story before he goes to sleep. The story we read had a mention of illegal drugs. Apparently he didn't know what drugs were. So we discussed what drugs were and how some bad guys can sell drugs to victims and why it is illegal. Suddenly Sempi drops this nugget of wisdom. People are always born to be strong and good. No one is born to be weak or evil. Friends who know me well, know that I strongly believe "people are generally good". I guess that belief is a genetic trait. | http://blog.amjith.com/good-people |
95 | What do you say? | <div class="posthaven-post-body"><p>One of the ways we trained Sempi to say "Please" and "Thank you" is by asking him "What do you say?" after he receives a favor from someone. With that context in mind, this conversation happened in the car. </p><p>Vian: Can I have that monster truck, Sempi?</p><p>Sempi: Here you go. </p><p>Vian takes the truck. Sempi being the responsible older brother wants to teach Vian good manners. </p><p>Sempi: What do you say, Vian? </p><p>Vian: Vrooom, Vrooom.</p><p>Sempi just shakes his head and mumbles something that vaguely sounds like "Kids these days". </p><p><br></p></div> | 1546412931 | ["2yo", "6yo", "Vian", "Sempi"] | One of the ways we trained Sempi to say "Please" and "Thank you" is by asking him "What do you say?" after he receives a favor from someone. With that context in mind, this conversation happened in the car. Vian: Can I have that monster truck, Sempi? Sempi: Here you go. Vian takes the truck. Sempi being the responsible older brother wants to teach Vian good manners. Sempi: What do you say, Vian? Vian: Vrooom, Vrooom. Sempi just shakes his head and mumbles something that vaguely sounds like "Kids these days". | http://blog.amjith.com/what-do-you-say |
96 | My Cup Runneth Over | <div class="posthaven-post-body"><p>Vian is having lunch. I'm still making a plate for myself. He requests some water, so brought him a cup of water.</p><p>Vian: Appa, this is too watery. </p><p>Me: I'm glad to hear that Vian. The water is supposed to be watery. </p><p>Vian: No appa, I can't drink it.</p><p>Me: Why not?</p><p>Vian: Because it is too watery. </p><p>I walked over to him to check it out. He was complaining because I filled the water to the brim and he couldn't drink out of it.</p><p>Me: I'm sorry Vian, I will fill it appropriately next time. </p><p>Vian: Yeah appa, next time don't make it too watery.</p><p><br></p></div> | 1544997579 | ["2yo", "vian"] | Vian is having lunch. I'm still making a plate for myself. He requests some water, so brought him a cup of water. Vian: Appa, this is too watery. Me: I'm glad to hear that Vian. The water is supposed to be watery. Vian: No appa, I can't drink it. Me: Why not? Vian: Because it is too watery. I walked over to him to check it out. He was complaining because I filled the water to the brim and he couldn't drink out of it. Me: I'm sorry Vian, I will fill it appropriately next time. Vian: Yeah appa, next time don't make it too watery. | http://blog.amjith.com/my-cup-runneth-over |
97 | Answer Me! | <div class="posthaven-post-body"><p>It is no secret that both Sempi and Vian prefer their mom over me. Vian perceives me as the guy who lives in the same house and occasionally grabs him from his mom to change his diaper. </p><p>If I happen to enter a room in which he is playing, he will preemptively declare "I don't need you, appa". Which is a wonderfully heartwarming phrase to hear from your child. </p><p>A couple of days ago, the entire family was in the living room. Yoshi was playing with the kids, I was working on my laptop. Yoshi stood up to leave the room, and Vian starts to get anxious. Yoshi reassures him that she'll be right back. I wasn't paying much attention to the surroundings as I was focused on my laptop. </p><p>Vian says something to me. I half-heartedly acknowledge. Suddenly he yells at me, "APPA! Are you going to answer me?". I immediately sit straight, set aside my laptop and focus all of my attention to him. "I'm sorry, Vian. What were you saying, baby?". Vian replies "I was saying that I don't need you". </p><p>Very well then, I'm glad you got my undivided attention to share that, <redacted expletive>.</p></div> | 1543303416 | ["2yo", "vian"] | It is no secret that both Sempi and Vian prefer their mom over me. Vian perceives me as the guy who lives in the same house and occasionally grabs him from his mom to change his diaper. If I happen to enter a room in which he is playing, he will preemptively declare "I don't need you, appa". Which is a wonderfully heartwarming phrase to hear from your child. A couple of days ago, the entire family was in the living room. Yoshi was playing with the kids, I was working on my laptop. Yoshi stood up to leave the room, and Vian starts to get anxious. Yoshi reassures him that she'll be right back. I wasn't paying much attention to the surroundings as I was focused on my laptop. Vian says something to me. I half-heartedly acknowledge. Suddenly he yells at me, "APPA! Are you going to answer me?". I immediately sit straight, set aside my laptop and focus all of my attention to him. "I'm sorry, Vian. What were you saying, baby?". Vian replies "I was saying that I don't need you". Very well then, I'm glad you got my undivided attention to share that, <redacted expletive>. | http://blog.amjith.com/answer-me |
98 | Stay at Home Dad - Week 1 | <div class="posthaven-post-body"><p>tl;dr: It is hard and I'm struggling. But if I had a choice I'll be a stay at home dad all the time.</p><p>My <a href="http://newrelic.com" target="_blank">company</a> offers 4 weeks of fully paid paternity leave. I'm staying home to help out with the new <a href="http://blog.amjith.com/vianvilari-takeru-ramanujam" target="_blank">baby</a>. I thought I'd miss working and I did, for whole two days. I was checking my work email and clearing the accumulation, but after that I completely forgot about anything work related. </p><p></p><p>The few times I've held the new born, I can't peel my eyes off of him. The little guy wins the staring contest every time. Sometimes I get a stink eye from him, when I take him from his mom's arms. But he's just too adorable to be taken seriously.<br></p><p>But most of my time is spent with Sempi (our first son), trying to fill the time and attention that Yoshi used to provide him. The biggest challenge so far is trying to find things to do with him. He's not a fan of leaving the house (probably inherited from me), but he insists on me playing with his trucks. After a day of playing in the house, my brain was fried from squeezing every ounce of creativity to make the playtime fun for both of us.</p><p>I used to take him to our nearby coffee shop to read books on weekends. That worked great when I did it once a week, he flat out refused when I asked him to go two days in a row. </p><p>Tiny emperor on his stroller, being chauffeured to the coffee shop.</p><p> </p><div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[1056729]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1704623/I3jiqmDeYDGcUSdOfYt8AgZOnNs/large_IMG_20160505_155413.jpg" data-posthaven-state="processed" data-medium-src="https://ph… | 1462896003 | ["personal", "3yo", "sempi", "vilari"] | tl;dr: It is hard and I'm struggling. But if I had a choice I'll be a stay at home dad all the time. My [company](http://newrelic.com) offers 4 weeks of fully paid paternity leave. I'm staying home to help out with the new [baby](http://blog.amjith.com/vianvilari-takeru-ramanujam). I thought I'd miss working and I did, for whole two days. I was checking my work email and clearing the accumulation, but after that I completely forgot about anything work related. The few times I've held the new born, I can't peel my eyes off of him. The little guy wins the staring contest every time. Sometimes I get a stink eye from him, when I take him from his mom's arms. But he's just too adorable to be taken seriously. But most of my time is spent with Sempi (our first son), trying to fill the time and attention that Yoshi used to provide him. The biggest challenge so far is trying to find things to do with him. He's not a fan of leaving the house (probably inherited from me), but he insists on me playing with his trucks. After a day of playing in the house, my brain was fried from squeezing every ounce of creativity to make the playtime fun for both of us. I used to take him to our nearby coffee shop to read books on weekends. That worked great when I did it once a week, he flat out refused when I asked him to go two days in a row. Tiny emperor on his stroller, being chauffeured to the coffee shop. ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/1704623/I3jiqmDeYDGcUSdOfYt8AgZOnNs/large_IMG_20160505_155413.jpg) Putting him to sleep at night hasn't been rough thanks to Yoshi. She established a nice bedtime routine. Even though reading books in bed was designed to put him to sleep, I'm the one who usually zonks out first. Weekends are harder if I don't have anything planned. Last weekend I convinced him to go to the Children's museum where he spent a cool 6 hours playing with every exhibit to his heart's content. ◀ 1 of 4 ▶ [![](https://phaven-prod.s3.amazonaws.com/files/image_par… | http://blog.amjith.com/stay-at-home-dad-week-1 |
99 | Mom by any other name | <div class="posthaven-post-body"><p>It was a cold Sunday morning. Sempi doesn't want to leave the house. I'm trying to convince him to go out for family brunch. Yoshi is still getting ready.</p><p>Sempi: I don't want to go. I want to stay home and play legos.</p><p>Me: If you want to stay home, that's fine. I'm going out for brunch.</p><p>Sempi: Ok.</p><p>Me: I'm taking Vian with me.</p><p>Sempi: Ok, you can take Vian and I'll stay with Amma.</p><p>Me: Nope, I'm taking my wife with me. </p><p>Sempi: Ugh! Appaaaa ...... Fine. We'll all go.</p><p>Me: Alright, hurry up and put on your shoes. <br></p><p>Sempi: Hold on, let's wait for our wife.</p><p>Me: Hey! She's my wife, not our wife.</p><p>Sempi: Apppaaaa......</p></div> | 1544421664 | ["6yo", "sempi"] | It was a cold Sunday morning. Sempi doesn't want to leave the house. I'm trying to convince him to go out for family brunch. Yoshi is still getting ready. Sempi: I don't want to go. I want to stay home and play legos. Me: If you want to stay home, that's fine. I'm going out for brunch. Sempi: Ok. Me: I'm taking Vian with me. Sempi: Ok, you can take Vian and I'll stay with Amma. Me: Nope, I'm taking my wife with me. Sempi: Ugh! Appaaaa ...... Fine. We'll all go. Me: Alright, hurry up and put on your shoes. Sempi: Hold on, let's wait for our wife. Me: Hey! She's my wife, not our wife. Sempi: Apppaaaa...... | http://blog.amjith.com/mom-by-any-other-name |
100 | Hot Cocoa | <div class="posthaven-post-body"><p>It is freezing outside. We bundle up and go out to explore. When we got back to our lodging it was warm and cozy. Yoshi decided to make everyone hot cocoa. </p><p>She brings the cups of hot cocoa and the bag of marshmallows.</p><p>Yoshi: Vian, how old are you?</p><p>Vian: Two!</p><p>Yoshi: You can have 2 marshmallows for your hot chocolate.</p><p>Vian: Yay! (and proceeds to grab a handful of marshmallows and dumps it into his hot chocolate).</p><p> </p><div class="posthaven-gallery posthaven-large-img" id="posthaven_gallery[1361116]"> <div class="posthaven-gallery-car"> <p class="posthaven-file posthaven-file-image posthaven-file-state-processed"> <img class="posthaven-gallery-image" src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2171422/UYYRAI2pnA7DpoCqfNMqx16bBHI/large_HotCocoa.jpeg" data-posthaven-state="processed" data-medium-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2171422/UYYRAI2pnA7DpoCqfNMqx16bBHI/medium_HotCocoa.jpeg" data-medium-width="800" data-medium-height="600" data-large-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2171422/UYYRAI2pnA7DpoCqfNMqx16bBHI/large_HotCocoa.jpeg" data-large-width="1200" data-large-height="900" data-thumb-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2171422/UYYRAI2pnA7DpoCqfNMqx16bBHI/thumb_HotCocoa.jpeg" data-thumb-width="200" data-thumb-height="200" data-xlarge-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2171422/UYYRAI2pnA7DpoCqfNMqx16bBHI/xlarge_HotCocoa.jpeg" data-xlarge-width="1600" data-xlarge-height="1200" data-orig-src="https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2171422/UYYRAI2pnA7DpoCqfNMqx16bBHI/HotCocoa.jpeg" data-orig-width="1600" data-orig-height="1200" data-posthaven-id="2171422"> </p> </div> </div> <p></p></div> | 1542846216 | ["6yo", "sempi", "2yo", "vian"] | It is freezing outside. We bundle up and go out to explore. When we got back to our lodging it was warm and cozy. Yoshi decided to make everyone hot cocoa. She brings the cups of hot cocoa and the bag of marshmallows. Yoshi: Vian, how old are you? Vian: Two! Yoshi: You can have 2 marshmallows for your hot chocolate. Vian: Yay! (and proceeds to grab a handful of marshmallows and dumps it into his hot chocolate). ![](https://phaven-prod.s3.amazonaws.com/files/image_part/asset/2171422/UYYRAI2pnA7DpoCqfNMqx16bBHI/large_HotCocoa.jpeg) | http://blog.amjith.com/hot-cocoa |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [posts] ( [id] INTEGER PRIMARY KEY, [title] TEXT, [rawbody] TEXT, [date] TEXT, [tags] TEXT, [mdbody] TEXT, [url] TEXT );