<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: zohebv</title><link>https://news.ycombinator.com/user?id=zohebv</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 06 Jul 2026 23:51:42 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=zohebv" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by zohebv in "That “distressed baby" Tim Armstrong blamed for benefit cuts? She’s my daughter"]]></title><description><![CDATA[
<p>It should be fairly clear from the responses to your post that the characterization of this reaction as a "lynch mob" does not meet the established standard of usage of this term.<p>Getting universally criticized for a statement is not a qualification for assuming "lynch mob" victim status.<p>> I meant the forces that drive lynch mobs are driving people here.<p>This particular statement can be interpreted in so many different ways that it remains meaningless as it stands.<p>> Did he say that?<p>Did anyone lynch him?</p>
]]></description><pubDate>Mon, 10 Feb 2014 09:38:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=7210007</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=7210007</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7210007</guid></item><item><title><![CDATA[New comment by zohebv in "That “distressed baby" Tim Armstrong blamed for benefit cuts? She’s my daughter"]]></title><description><![CDATA[
<p>> Frankly, posting and upvoting that sort of comment is the behavior of a lynch mob.<p>Posting a photograph of a victim of a lynch mob
<a href="http://upload.wikimedia.org/wikipedia/commons/d/d5/Lynching2.jpg" rel="nofollow">http://upload.wikimedia.org/wikipedia/commons/d/d5/Lynching2...</a><p>I think Armstrong might be discomfited by the well deserved online education in social etiquette and the priority of life (of poorer people) over money. He sorely needs it and he will be the better for it, though a complete cure for him seems impossible.<p>> Did he say that?<p>Did I call you an ignorant money peddler, who thinks he is very smart because he can micro analyze statements and completely ignore the context in which the statement was made, as per his convenience?<p>Of course, I did not!<p>I call you no such thing.</p>
]]></description><pubDate>Sun, 09 Feb 2014 21:52:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=7207466</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=7207466</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7207466</guid></item><item><title><![CDATA[New comment by zohebv in "Kotlin: A statically-typed language that compiles to JVM bytecode and JavaScript"]]></title><description><![CDATA[
<p>Are you the same guy as ramkahen on reddit?<p>_ has only one meaning => "unspecified"<p><a href="http://www.reddit.com/r/programming/comments/uk015/kotlin_m2_candidate/c4w5oz3?context=3" rel="nofollow">http://www.reddit.com/r/programming/comments/uk015/kotlin_m2...</a></p>
]]></description><pubDate>Sun, 10 Nov 2013 20:10:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=6708205</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=6708205</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6708205</guid></item><item><title><![CDATA[New comment by zohebv in "VP of Engineering - "best of the best" = no more than 12 years experience?"]]></title><description><![CDATA[
<p>> Furthermore, insofar as you create competition to hold that position, you're creating a destructive work environment. Software development is a cooperative activity that can't be efficiently partitioned.<p>Seen way too many of these kinds of management structures. The management decides to appoint the crony as the lead, because picking the best developer is "wasteful" and creates a "destructive work environment". The amount of cringe inducing perversion of logic in the comment above is a tragedy because of its pervasiveness. On the flip side, these kinds of organizations are not too hard to avoid, doomed startups and successful behemoths - both fit these criteria. A smaller company with decent growth is probably the better bet.</p>
]]></description><pubDate>Mon, 15 Jul 2013 17:32:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=6047102</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=6047102</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6047102</guid></item><item><title><![CDATA[New comment by zohebv in "A very old problem turns 20"]]></title><description><![CDATA[
<p>> Three undergrads<p>Correction : A Professor(Manindra Agrawal) who had been working on the problem for quite some time and 2 undergrads.</p>
]]></description><pubDate>Mon, 24 Jun 2013 22:30:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=5936176</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=5936176</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5936176</guid></item><item><title><![CDATA[New comment by zohebv in "Google’s Go has some coders raving"]]></title><description><![CDATA[
<p>+100 for Scala.<p>You can pry the super powerful type system, functional programming support, monad comprehensions, library ecosystem, IDE support from my cold dead hands :D</p>
]]></description><pubDate>Thu, 30 May 2013 16:41:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=5793527</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=5793527</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5793527</guid></item><item><title><![CDATA[New comment by zohebv in "Functors, applicatives, and monads in pictures"]]></title><description><![CDATA[
<p>Reading your response, I think I need to read more on the topic. I haven't read Moggi's paper and I need to look up on the continuation Monad. You are probably correct and I am probably wrong. However, I will let my original post remain as a matter of historical record :-)</p>
]]></description><pubDate>Sun, 19 May 2013 19:27:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=5734092</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=5734092</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5734092</guid></item><item><title><![CDATA[New comment by zohebv in "Functors, applicatives, and monads in pictures"]]></title><description><![CDATA[
<p>I don't know how else to put it, but at least half of what you have written above is completely wrong.<p>> but they're less useful in other languages where you already have effects everywhere.<p>Scala has side effects everywhere, yet the Monad is extensively used in Scala programs. Monads have nothing to do with "effects".<p>Monads are not used to decide the kind of "effects" you are allowed. By calling every Monad a kind of "effect", you are just begging the question. Monads are merely objects that follow 3 monad laws, no more no less.<p>> This is why Haskell is pure despite having effects. Haskell programs don't do IO, they yield control to the runtime environment whenever IO needs to be done.<p>How is this different from a C program? Haskell is pure in the presence of IO, because the type system tracks IO calls and forces any function that even indirectly refers to a quantity obtained via IO to modify its type signature to reflect the IO action. This can be done with/without Monads. Haskell IO is a Monad, because it pretty much analogous to the State Monad and Haskell has special Monad syntax that lets you pass the World State implicitly and write imperative code in an imperative style.</p>
]]></description><pubDate>Sun, 19 May 2013 09:31:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=5732371</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=5732371</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5732371</guid></item><item><title><![CDATA[New comment by zohebv in "A Philosophy of Programming Languages"]]></title><description><![CDATA[
<p>Interesting, this seems very similar to Haskell at a very basic level.<p>A Haskell program consists of declarations of functions and constants. Constants belong to the class Eq<p><a href="http://www.haskell.org/ghc/docs/latest/html/libraries/base/Data-Eq.html" rel="nofollow">http://www.haskell.org/ghc/docs/latest/html/libraries/base/D...</a><p>Functions do not.<p>How is your notion of nonsymbol/symbol different from function/constant?</p>
]]></description><pubDate>Thu, 09 May 2013 18:26:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=5682119</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=5682119</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5682119</guid></item><item><title><![CDATA[New comment by zohebv in "Running a software team at Google"]]></title><description><![CDATA[
<p>Any one with work experience and common sense can tell that talking to boss^2 and HR is a recipe for disaster. You are also unwilling to challenge michael's claim that he was meeting expectations and in the midst of a transfer. You also think restricting transfers for 1.5 years is not a problem. Is there any problem within Google that you are willing to admit?<p>You sound like an HR drone tasked with attacking michael's record with false data. You haven't responded to his claim that his record met expectations. Unless you use a real identity, your claims will have no credibility.</p>
]]></description><pubDate>Tue, 09 Apr 2013 21:54:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=5521660</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=5521660</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5521660</guid></item><item><title><![CDATA[New comment by zohebv in "Ask HN: What unknown technical blogs or sites do you read?"]]></title><description><![CDATA[
<p><a href="http://blog.sigfpe.com/" rel="nofollow">http://blog.sigfpe.com/</a>
<a href="http://lambda-the-ultimate.org/" rel="nofollow">http://lambda-the-ultimate.org/</a></p>
]]></description><pubDate>Sun, 16 Dec 2012 18:15:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=4929007</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=4929007</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4929007</guid></item><item><title><![CDATA[New comment by zohebv in "Why I'm returning my Microsoft Surface RT"]]></title><description><![CDATA[
<p>Off topic comment.
Just tried the surface RT at the Microsoft store today. I think its awesome. I am considering the surface PRO for purchase. However, I am concerned that I cannot use it as a "laptop" i.e. balance the surface while typing with the keyboard on my lap. This is probably 50% of my usage scenario. If there is a heavier version of typecover that can support the tablet without a kickstand when placed on the lap I would rush out to buy the Pro version.</p>
]]></description><pubDate>Mon, 29 Oct 2012 03:56:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=4711037</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=4711037</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4711037</guid></item><item><title><![CDATA[New comment by zohebv in "Collection Of Puzzles For Programmers"]]></title><description><![CDATA[
<p>Some examples<p>1. Purely declarative animations in a general purpose language
<a href="http://conal.net/fran/tutorial.htm" rel="nofollow">http://conal.net/fran/tutorial.htm</a><p>2. A recursive descent parser where you can declare your grammar as in yacc i.e. it is not a separate compiler generator but a regular library, and the code is type safe unlike yacc. The best part is that the actual library is just 2 lines of code, thanks to the magic of lazy evaluation and a powerful type system.<p>result v = \inp -> [(v,inp)]<p>p `bind` f = \inp -> concat [f v out | (v,out) <- p inp]<p><a href="http://eprints.nottingham.ac.uk/237/1/monparsing.pdf" rel="nofollow">http://eprints.nottingham.ac.uk/237/1/monparsing.pdf</a></p>
]]></description><pubDate>Sat, 18 Aug 2012 19:20:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=4402013</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=4402013</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4402013</guid></item><item><title><![CDATA[New comment by zohebv in "Steve Yegge: Notes from the Mystery Machine Bus"]]></title><description><![CDATA[
<p>I have never agreed more with a HN comment than this time.<p>This has to be the worst post by Yegge in terms of the negative impact it can have on software engineers and engineering.<p>He took a technical topic and labelled his belief system as "liberal" and the others as conservative. When some one proposes a technical approach he doesn't like, he can simply call him a "conservative-not that there is anything wrong with that".<p>Yegge is an average programmer at best. He wasn't able to maintain a simple 2D game and very easily blamed Java for it. It was a clear case of PEBKAC. It is absurd and unsurprising at the same time, that the simple act of blogging can some how elevate a programmer to expert status.<p>Yegge clearly has no idea what he is talking about. I am currently working with Scala which is apparently Hardcore conservative. Look at his characteristics of liberal languages.<p>1. Eval. - scala has a REPL, so u can do an eval if you wish.<p>2. Metaprogramming - scala macros<p>3. Dynamic scoping - No<p>4. all-errors-are-warnings - Meaningless bullet point, all languages encounter statements that it cannot meaningfully interpret. This statement just shows you Yegge's massive PL understanding deficit.<p>5. Reflection and dynamic invocation. RTTI - Scala has these.<p>6. The C preprocessor - Nope<p>7. Lisp macros - scala macros.<p>8. Domain-specific languages (for the most part). Optional parameters. Extensible syntax. Downcasting.  Auto-casting.  reinterpret_cast. Automatic stringification.  Automatic type conversions across dissimilar types.  
- all yes for scala. Infact, you can provide your own casts for any 2 types and import/export casts as you wish.<p>9. Nil/null as an overloaded semantic value (empty list, empty string, value-not-present) - Yes and No, Option[T] is generic. If you want to know if any container(including strings) is empty, you say container.isEmpty(). But not container == null.<p>10. Debuggers. Yes Scala has debuggers. At this point one has to ask - what is this guy smoking. If your language has a debugger it is a liberal language? WTF??<p>11. Bit fields - No<p>12. Implicit conversion operators (e.g. Scala's implicits).  Sixty-pass compilers.  Whole-namespace imports.  Thread-local variables.  Value dispatch.  Arity-based function overloading.  Mixed-type collections.
Yes,  yes, yes for scala.<p>13. API compatibility modes.  Advice and AOP.  Convention in preference to explicit configuration.
These are fairly vague properties and you could say yes/no.<p>I recently converted a "liberal" perl project into "conservative" scala and the code size fell by an order of magnitude, but apparently I live in alternate universe where "conservative" languages are somehow more succinct.<p>This guy is just suffering from verbal diarrhoea and he gets way too much attention for his uninformed commentary. I haven't seen a more bogus classification in ages, it is quite amazing how he politicized a purely technical topic.<p>It is fairly clear what his issue is<p>1. He likes dynamically typed languages. You have to type less and lower error checking is tolerated by the community.<p>2. He is uncomfortable with more advanced PL concepts, cannot decipher compiler error messages when working languages like Haskell. He would much rather let the program run and crash with a run time stack, where he can jump in and examine the value or operation that caused the failure. The Haskell compiler error message makes him feel stupid and he does not like it. This also probably explains why he wants to dump clojure into conservative territory, too much of STM and Parallel Haskellish stuff going on.<p>3. He is not a big fan of java/C++.<p>There is nothing peculiar about the set of biases he has, in fact it is fairly typical. People who favor Java/C++ simply need high performance code that would need to be maintained/refactored for a long time. It is not a religious choice but a pragmatic decision in the face of constraints. I have never seen "conservatives" write build scripts in C++ or "liberals" write OS kernels in Ruby.<p>All the attributes he has described simply cannot produce the ordering of languages that he has conjured. In the only barely technical portion of the post he has contradicted himself soundly, but it doesn't matter because no one is paying any attention to that.</p>
]]></description><pubDate>Sat, 11 Aug 2012 19:06:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=4370725</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=4370725</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4370725</guid></item><item><title><![CDATA[New comment by zohebv in "Microsoft’s Downfall: Inside the Cannibalistic Culture That Felled a Tech Giant"]]></title><description><![CDATA[
<p>Gates was indeed a programming genius.
He wrote the BASIC interpreter and most of the software in Microsoft's early days. He also managed to publish an algorithm with Papadimitriou as an undergrad, while running Microsoft in parallel. <a href="http://www.sciencedirect.com/science/article/pii/0012365X79900682" rel="nofollow">http://www.sciencedirect.com/science/article/pii/0012365X799...</a><p>> Gates could not write the compiler tools himself<p>You are both underestimating Gates and overestimating how hard building a compiler/tool is.</p>
]]></description><pubDate>Wed, 04 Jul 2012 22:59:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=4201066</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=4201066</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4201066</guid></item><item><title><![CDATA[New comment by zohebv in "Super-star programmers"]]></title><description><![CDATA[
<p>Steve Yegge was also unable to successfully maintain a not-too-complex 2D game and managed to blame Java for it<p><a href="http://steve-yegge.blogspot.com/2007/12/codes-worst-enemy.html" rel="nofollow">http://steve-yegge.blogspot.com/2007/12/codes-worst-enemy.ht...</a><p>10Xer imples 10X some base level. Depending on what base you choose, Yegge can easily fall short.</p>
]]></description><pubDate>Fri, 15 Jun 2012 20:48:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=4118641</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=4118641</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4118641</guid></item><item><title><![CDATA[New comment by zohebv in "Wrong man was executed in Texas, probe says"]]></title><description><![CDATA[
<p>>  I have not seen a case of wrongful execution as bad as this<p>I have bad news. This is a "typical" death row victim story. There have been several others like him.<p><a href="http://en.wikipedia.org/wiki/Cameron_Todd_Willingham" rel="nofollow">http://en.wikipedia.org/wiki/Cameron_Todd_Willingham</a><p><a href="http://online.wsj.com/article/SB10001424052702304023804575566201554448476.html" rel="nofollow">http://online.wsj.com/article/SB1000142405270230402380457556...</a><p>Over half the death penalty convictions in Illinois were found to be faulty.<p><a href="http://deadlinethemovie.com/state/IL/index.php" rel="nofollow">http://deadlinethemovie.com/state/IL/index.php</a><p>There have been a total 18 innocent people exonerated on Death Row in Illinois.
Illinois has executed a total of 12 people since 1976<p>Prosecutors have no incentive to convict the criminal. Any plausible convict will do.</p>
]]></description><pubDate>Wed, 16 May 2012 05:59:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=3980698</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=3980698</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3980698</guid></item><item><title><![CDATA[New comment by zohebv in "The truth about Scala"]]></title><description><![CDATA[
<p>Its an April Fools joke.<p>3) was true until a few months ago. Or maybe its because I switched from a remote source repo mounted via Samba to a local flash HDD :-) I have been using Eclipse trouble free for a few months now, no issues whatsoever, except for some magic required during the initial maven setup.<p>4) Is an issue Scala outsiders complain about, but I have never seen this as an issue with people actually using Scala.<p>Build times are high compared to Java projects, though this could simply be because I am using scalac instead of fsc to build projects via maven. However, compilaton is incremental, so crazy build times should never occur in practice and the IDE highlights mistakes in less than a second.</p>
]]></description><pubDate>Sat, 31 Mar 2012 22:27:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=3781749</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=3781749</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3781749</guid></item><item><title><![CDATA[New comment by zohebv in "The truth about Scala"]]></title><description><![CDATA[
<p>Scala is far more object oriented than Java. So + is a method of the Int object and you can write 2.+(3) instead of 2+3. Methods are allowed to be operators, so that you can write 2+3 instead of 2.+(3). If _ is a separate token it represents an unnamed parameter, no more no less. In your specific case some_obj open_! translates to some_obj.open_.! It is not too difficult, you are just at week 1 of Scala.<p>As for language comparisons<p>1. C is simple/readable<p>It is way better than C in terms of readability. All 
constructs in C are simple, but it takes a lot of C code to accomplish simple things. Also, how readable is
while(<star>d++ = <star>s++);<p>2. Python is explicit<p>The advantage of Scala here is static typing and performance and much better IDE support. Python code typically looks cleaner than Scala code, but I have been told that closures in Python are less than perfect. Python OTOH has no build time issues.<p>3. Clojure is more functional<p>Clojure is not more or less functional than Scala. There are varying definitions of "functional"-ness. However, the gold standard of a functional programming language is widely recognized as Haskell. Scala is far closer to Haskell than Clojure in this respect. Again the significant difference between Clojure and Scala is static typing, not functional-ness.</p>
]]></description><pubDate>Sat, 31 Mar 2012 22:08:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=3781697</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=3781697</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3781697</guid></item><item><title><![CDATA[New comment by zohebv in "There is no point to distributing music in 24-bit/192kHz format."]]></title><description><![CDATA[
<p>> Basically, if you produce two ultrasonic frequencies, they will create an interference pattern at a much lower frequency than either of the individual frequencies.<p>So the interference pattern will be made up of one low frequency sound and higher frequency harmonics. Once again the higher frequency harmonics are redundant, because you only need to record the lower frequency sound.<p>The only possible way ultrasound can be picked up by the ear is if the ear has a non-linear response to the input sound. Going by the information in the article linked, it is highly unlikely that any significant non-linearity exists in the ear.</p>
]]></description><pubDate>Tue, 06 Mar 2012 03:56:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=3669583</link><dc:creator>zohebv</dc:creator><comments>https://news.ycombinator.com/item?id=3669583</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3669583</guid></item></channel></rss>