HNHacker News
TopNewBestAskShowJobs

vithlani

22 karma · joined March 31, 2008

submissionscomments
vithlani··on Q – A Data Language
For data exchange, what is wrong with using an ASN1 specified, BER encoded file? Genuine question...
vithlani··on JSON5 is a proposed extension to JSON
So are "seeing" and "hearing".

I for one am looking forward to the time when neural implants will translate my high level programming thoughts into microcode sent directly to the CPU for execution.

vithlani··on India's mission to probe Sun before 2020
How about building some toilets for the 750 million human beings (they happen to be Indian citizens) who don't have access to basic sanitation when they wake up each morning?

Fucking idiots... probe the sun my fat brown arse.

vithlani··on Dear first world dev, I am going to live your nightmare
Isn't this pretty much how your country works? Why do you expect to be treated different in a specific situation (IT industry and your job) when that is the overall attitude anyways?
vithlani··on Satya Nadella – Microsoft's CEO
The only good thing about this is showing the world that the curries are finally stepping up. It will not make one iota of difference to anything Microsoft does, its culture, policies, etc.
vithlani··on Royal pardon for codebreaker Alan Turing
Let this be a reminder to all hackers and geniuses out there: protect yourself from your society. You exist purely at the mercy of your physical realm. It does not matter how essential your discoveries, how profitable, how useful to mankind, how breathtaking. If you are perceived as being a risk (through something simple like your sexuality) you will be ground to dust. The decision will be made (perhaps justifiably) but it will be executed by the worst sort of petty human being: bureaucrats, under achievers, jealous men and beasts in human form who have been handed down power by the state. They will unleash a torrent of hellfire in your life.

This beast does not discriminate: weather a gathering of Sikhs in a park, tribes of Africans or a sole genius with an arguably significant contribution to the war effort - to the beast they are all one once the order has been given.

Always ensure you have some form of protection and a way out.

The British establishment should be ashamed of themselves. They have tolerated homosexuality for centuries among the upper classes up to and including the royals. To grind down a man on the level of Turing with for such an absurd reason is an act of criminal stupidity. All the more so after his efforts during the war.

The computer science community all the world over should reject this "pardon" and ask the queen to stuff it up her posterior.

vithlani··on Browser Extension Password Managers Exposing Passwords Everywhere
Why not disable auto-fill and auto-submit in your global preference?
vithlani··on The Future of JavaScript MVCs
> A lot of the OO support in React is there as a concession, more than being considered a virtue. It's really cool to have the FP community involved in the UI space. Those people are already sold on FP and statelessness and get the luxury of programming in tomorrow's paradigms today (how ironic that FP has been around for decades!)

As Sir William said, "There is blood in the old ways yet".

vithlani··on Scala – 1 Star – Would Not Program Again
http://swannodette.github.io/2013/12/17/the-future-of-javasc...

https://docs.google.com/document/d/1P3BLR31VA8cvLJLfMibSuTdw...

Q.E.D

Get your core model and concepts right, everything else follows.

vithlani··on Scala – 1 Star – Would Not Program Again
> Most of the core assumptions here, on which you base your opinion, are not correct.

Which ones are not correct? What is the core philosophy of Scala?

>For instance, Scala removes tons of crazy stuff which plagues Java.

If they are removed, how can you claim efficient interop between the two? They are not removed, they are hidden/masked.

> I'm also not sure how one can add Scala's first-class OOP-FP integration as a minus. Have a look at all the other languages which only managed to do that in a lot more terrible way (F#, Java).

Anything the brings C++ inside JAVA is a minus.

>Generics as well. Why is the fact that scalac doesn't try and throw obstacles at you when programming with Generics bad? (Have a look at Java or C#, where tons of reasonable code is rejected by the compiler, because those compiler devs were too lazy to implement things properly.)

Java does not throw "obstacles" its just that the thing was not designed to handle Generics efficiently in the first place. The compiler rejects it because it is not in the spec.

>Same with macros. Have a look at the state of art in Java. It's a terrible mess with various black magic tools and invocations combined with poor IDE and tooling support.

See above, the core language spec does not have any macro facility. So what state of the art are you talking about? If you try to shoehorn it in, of course the result is black magic and poor support. And I am not too sure that macros are a 100% necessity -- Paul Graham advises sparing use of macros in your code. And he is talking about LISP code -- something that has the facility built right in.

>If you can handle Java, I don't see an issue with Scala. Most of the stuff in Java is done in a better, more consistent and better designed way.

For me, consistency means the ability to hold a reasonable model in my head. Java + Generics + OO-FP + Macros + god knows what else is not a reasonable model. Do not mistake complexity for power.

>I'm not seeing that at all. Care to explain? Sure. Take Java syntax: If something is not designed to have a feature why do you want to try to shoehorn complex features in it? Clojure went the other way and completely changed the syntax, not mangling existing Java syntax.

Apply that to anything: the syntax, the compiler, the model, whatever.

>So Java is not mature, too? They are painfully adding mediocre lambda support right now. I'd call a language which was designed with lambdas in mind from the beginning and shipped with them since in 2005 more mature. The language in question is Scala.

I never said Java is not mature. In fact, it bends over backwards to accommodate code written in previous versions. If you want a language with lamdas built in (as an example of one feature) why not choose something that has been in existence for over 30 years, has tons of problems solved in it, was a result of original research first and commercialization later, has had more man hours thrown at its problems and implementation than Scala, etc? Why re-invent the wheel? Why not find a way of greasing the wheel better and applying a nice shine on it to make it attractive to modern programmers?

>I have never seen that in practice. I often wished code written in other languages would adhere to the standards of code written in Scala. That would make things a lot more readable, maintainable and understandable.

So all the people complaining about Scala library code readability are whiners? All code written in Scala is a lot more readable, maintainable and understandable?

Can you please point me to where the Scala specification is? It would have to be stand alone to implement in C, not built on something else. Genuine question. If there is a spec to the language (implying design and thought), why does the language keep on changing and breaking previous versions?

>Too bad, they are currently trying to add a half-baked static type-system to core. Again, I think a language which shipped with such basic things in mind since 2003 is a lot more mature.

How can an extension to something derived from decades of research lead to it being termed as not mature? Maybe they are adding it in now because the core design has proven itself -- for example after the almost effortless (conceptually speaking) porting of Go's goroutines/channels to Clojure core in the core.async extension. They had to introduce no mangled syntax and Generics for this -- to me this is elegant.

I would submit to you that nothing new comes without input from the old, and if you accept this I say Java is the wrong place to start. The JVM as a platform is awesome, the Java language is not.

vithlani··on Scala – 1 Star – Would Not Program Again
Thank you for taking the time to reply in such detail. I can see that you are a committed Scala dev and what I write below will probably not make a difference to you. However, for anybody else:

I think what I want to say is, Scala is not a mature platform. I believe the language was originally conceived to address the deficiencies of the JAVA language while retaining the versatility of the JVM as a platform.

If you look at the history of JAVA, it was a 'halfway successful attempt to drag C++ programmers towards Lisp'. Clearly this did not work well as it was not a well reasoned effort (syntax, semantics and so on) and went further downhill from the introduction of Generics in 1.5. Scala incorporates all the features of JAVA, adds halfway-to-Haskell-FP, OO-FP, XML-DSLs, some other very funky concepts stretching Generics and then...Macros...and probably stuff from JAVA 8. I humbly submit that this mixture is too much for a reasonable brain to handle. Also in the mix goes the backwards compatibility breakages. How many concepts can you cram into a semantic that in itself is not sound? Is there a standard for the language? Can I implement core Scala in C?

Scala improved a lot from previous proves that point that it is still "improving" i.e. not a mature platform as yet.

Functional programming concepts are not a problem for myself (and I believe any other reasonable programmer) it is the sensory overload of fitting it all into a model: all the language rules that you need to juggle to read a 15 line block of code that can jump between Scala, JAVA, DSL, Generics, operator overloading, etc.

Code written in more powerful languages feels like being harder to read, simply because each line of code does more...hmmm, is this a good thing? Because I have some Perl that you might wanna look at. Succinctness is power, not sensory and mental overload.

If I want the power of OO/FP/DSLs/MACROS all in one bundle, I would prefer a reasonable modern Lisp: coherence and maturity being the deciding factor in that choice.

Maybe Clojure?

vithlani··on Scala – 1 Star – Would Not Program Again
Good engineering practise?

1. Lack of documentation

2. Breaking backwards compatibility

3. Opaque error messages

4. Encourages ad-hoc syntax that makes sense to one person (or team) but does not to the next -- maintenance nightmare.

5. Lack of general stability in language and libraries serving to confuse the eco-system.

Hmmm....

vithlani··on Scala – 1 Star – Would Not Program Again
Exactly my reaction.
vithlani··on Why Isn’t Programming Futuristic?
"massive amounts of tooling necessary to fulfill the promise of ZeroVM"

For sure. To me it seems like a good environment for isolating processes and users in security and execution contexts -- just boot up an instance, perform a task and then destroy. How it applies to data processing is not very clear.

"But the specific product is of interest to me, not just the environment that spawned it."

I see what you mean. I feel that anyone creating such a product/environment will run into massive problems that are very non-technical. How do you get language owners/implementers to agree to a common standard especially in today's web where we see common denominators of data sharing like RSS slowly being strangled by the big players -- let alone co-operations in programming environments/runtimes. The reason I mention the "big players" is that without somebody getting funded to think about this in a serious manner for an extended period of time, it will be very hard. Organisations like universities have the brainpower for this but not the money or the drive.

Something encouraging here is the recent slew of JVM languages -- they share objects with Java. Limitation here is its all on a single platform.

Maybe with the recent announcement of a Haskell kernel for IPython environment there is room for doing some inter-lang op work?

vithlani··on Why Isn’t Programming Futuristic?
Ah right, you were luckier then I was.

I took an AI course at uni so that I could see some Lisp in action (and learn AI) but the bastard lecturers (2 of them) change it to ... JAVA! While still using the Norvig textbook that had the algorithms in LISP-y pseudocode. And with lead lecturer being a Vietnamese PhD who couldn't speak enough English to explain the most basic concept. 2/3 of the class flunked.

Way to go on your initiative to look for papers and context around your other courses! I bet the perspective it gave you has helped.

vithlani··on Why Isn’t Programming Futuristic?
Assuming your concern is across a single/uniform language:

How about Smalltalk as a basis or the foundation of what you want? If somebody pursues the approach, how hard would it be to develop a layer that takes care of the safe-unsafe issue?

MOP: extensibility without ubiquitous useful patterns. My experience says that "ubiquitous patterns" manifest when you use a technology against real problems. So use the MOP to tackle several problems and then watch the patterns emerge. If 1/25th of the raw brain power had been applied to abominations like PHP had been diverted to using Lisp and exploring the meta patterns in there.... my gut says your blog post would have been about some cool framework you wrote to solve the problem ;)

On the other hand, if your concern crosses the single language barrier (you mention LINQ) then what sits at the top of Object Model A and Object Model B? It is some Meta Model or a specific library framework that understands both. Back to the meta again, back to all those leaves on a branch of history left unexplored.

What do we have instead? Brainpower, time, money and youth/a generation being devoted to the "hip hop VM" at Facebook.

Given your prolific programming output (thank you for pip and virtualenv, big admirer) it is no wonder that you ponder these issues and wish to pursue something higher up. What I was trying to get at is that, respectfully, you are not the first and that there might be some lessons in the history of our profession that we could learn from and use as a basis for progress.

Regarding ZeroVM, I am a bit confused as to what exactly "moving apps to data means". If I have a 20 GB log file to process living on a filesystem, how do I "move" my Python processor script to it?

vithlani··on Why Isn’t Programming Futuristic?
This is a sad discussion -- both the essay and here. Nobody has bothered to look back in history.

"You need to be able to inspect and traverse objects, all objects."

Smalltalk? Lisp Machines?

"There also must be a culture where proper extensions are regularly provided on objects. Powerful tools are built on powerful paradigms, and enabling a paradigm isn’t the same thing as actually implementing it across a fully developed programming environment."

The MOP?

Are we doomed to keep on asking these questions again and again? An IT curriculum should include at least one unit where students are required to study the history of these things and write an essay.

vithlani··on Thoreau 2.0
Seconded. (Thirded? Fourthed?)

Anyways, the man has a way with words.

vithlani··on Don't Fly During Ramadan
LOL!

Don't be fooled by this post, the dude comes from a country where rape is a regular no-comment thing.

Where a minister cost the exchequer $50 billion by giving away spectrum.

Where the state army regularly massacres its own citizens in the name of progress (forced land seizures), citizens who have no political options and have turned to Naxalism out of desperation.

Look, brown man travels for 10 years in the US and gets hassled once -- with some justification it seems (the chemical tests came back positive). I can guarantee that and average American travelling to India would face a much harsher ordeal at the hands of the locals. Just ask any white woman tourist.

Yo...Aggrieved Bong! Karma is a bitch and somehow all the hassling of Whitey when he is in Calcutta had to come around. In this case it landed on your ass. Move along and stop pretending to be a hipster with your "virtual corporations" and shit. Or would you prefer going back to the motherland and working for Didi?

I for one would be happy to be subjected to such a process IF it also had the effect of catching the REAL terrorists. The fact that it does not is the real tragedy here.

vithlani··on "Australia Tax" is real: Infrastructure and Communications report
"That said, she gets paid $95K for a part time job with full benefits. She had a similar job in the states that was full time and it paid $34,000 with minimal benefits."

And there you have it.

If you want to live in a society with high pay, good benefits, free Medicare, compulsory pension contributed to by your employer, etc -- then be prepared to pay.

Also, there is nothing stopping you from importing cheap clothing, goods, books, whatever from overseas.

vithlani··on "Australia Tax" is real: Infrastructure and Communications report
This is demonstrably false.

I agree that cost of living in Australia is high, but you can buy a loaf of "baked in store" white or wholemeal bread for AUD $2. Sure its not organic but it is fresh.

vithlani··on Debuggex: visual regex tester – now with PCRE
Wow!

Is there a way to export this as a JPEG|PNG?

vithlani··on Code which every programmer must read before dying
How about the Lion's book?

http://en.wikipedia.org/wiki/Lions_Commentary_on_UNIX_6th_Ed...

Get the source code from http://minnie.tuhs.org/cgi-bin/utree.pl

vithlani··on Ruby and Python: pivot points
Hot damn, I had no idea bout that module.....
vithlani··on Ruby and Python: pivot points
$ipython

In [1]: x = [1,2,3]

In [2]: y = [4,5,6]

In [3]: x + y

Out[3]: [1, 2, 3, 4, 5, 6]

Why use 6 [join()] characters when you can use 1 :)

vithlani··on Ask HN: Good books?
I agree -- FBR is a much deeper book.
vithlani··on [dead]
Shenanighans?

Perhaps you should try and write a language from scratch, see it come into wide use, develop millions of users and then issue opinions?

vithlani··on A new approach to China
In regards to Kai-Fu Lee: his track record might be one of large corporations but now he spots an opportunity to capitalize on it and start something that will net him much more than working for a big corp ever could.

In China, business is like no other place. It is fully about connections and relationships and Lee is a unique individual -- he has connections from his days at all the major corps (Microsoft, Google) and finally he is using them for his benefit. If it takes off, he could be incredibly rich -- much more than the $10 million Google was (rumored) paying him. If not, he can always go back to any big corp: they will be falling all over themselves to have him.

Point being: you cannot correlate Lee's departure with a their projected performance.

vithlani··on Ask HN: Scriptable command line browser?
Please take a look at Chickenfoot

http://groups.csail.mit.edu/uid/chickenfoot/index.php

maybe it does what you want? I was very impressed with a video I had seen about it a couple of years ago.

vithlani··on If you're in Melbourne Australia, you should come join us at today's YC meetup
Very nice event, hope more coming soon.
← PreviousPage 2 of 3Next →