HNHacker News
TopNewBestAskShowJobs

jmilkbal

180 karma · joined January 10, 2012

submissionscomments
jmilkbal··on Dear Mozilla, stop watching me
Mozilla are the only ones without a hidden modus operandi. They make a web browser and have become the organization to trust because their mission is make the web a better place. Google want to sell ads and do everything in their power to bombard its users about whom they so desperately needs to know everything. Apple and Microsoft are busy creating lock-in. I don't actually understand how any one knowing about these and knowing what a force for good Mozilla strives to be could possibly use anything but Mozilla products. We are implicitly telling these companies that we accept their behavior. The same attitudes about deomcracy, "how can my single voice mean anything", applies just as much to corporations and using their products and sending money to them. It's a plague and we can work against. You just have to (at least in the context of this thread) spend a few seconds to go back to the browser with your interests at heart and quit destroying the web for the rest of us.
jmilkbal··on Mozilla launches massive campaign on digital surveillance
Google integration, by definition, defies Mozilla's mission. I'm okay with the integration knowing that I can fix it, though I wish there were a start-up option for novices or to have it outright removed, though.
jmilkbal··on PRISM? Come to Israel to study our surveillance state
It doesn't matter the level of invasive practices in other states. It's not a competition for the most or least practices, though policy and research are worth having dialog about. This combative attitude isn't useful, in English or Hebrew.

Edit: As the first commenter of the article suggests, companies are doing far more than the government in terms of intrusion just all the time. We need to strengthen the bill of rights to not just give procedural protection from the government, but real rights that protect us all from each other.

jmilkbal··on The Feds’ ‘Ultimate Solution’ to Curb Distracted Driving
Riding my bicycle around town can be extremely disconcerting when the only one on the road who is actively participating in their transportation is me.
jmilkbal··on Replacing Clever Code with Unremarkable Code in Go
Yeah and this comment on another thread is probably spot on.

http://news.ycombinator.com/item?id=5078276

I don't really find Go compelling, but I can understand the background some folks might be coming from that might make it compelling for them.

jmilkbal··on Learn C
Ada ain't functional. A soft introduction is John English's Craft of Object-oriented programming. It's online, free, very intuitive and very well written. I usually tell folks to skip over the basics if they know them and work the first half. You're welcome to swing by #ada on Freenode for exceptionally friendly Ada talk. See what you think! I hope to see you on Freenode. :)
jmilkbal··on Replacing Clever Code with Unremarkable Code in Go
I recall the launch documentation specifically saying generics are "... a work in progress". Ignoring academic progress is easy when programming is far more often a trade than the application of computer science. I once saw a video comparing Go to an unnamed which matched or surpassed Go in all the ways the video compared the two. The language was Algol 60. Naturally, can't find the video now.
jmilkbal··on Learn C
That's a great anecdote. All to often you find when people are forced to do something they hate it no matter what, whether it's deserved or not. I'm guilty of this a bit myself. Ada had a DoD mandate in the 90s which really riled a lot of folks and put them off of the language for good. It's part of the reason Ada has not had more of an impact in our lives. That, and compilers for Ada were much more expensive then as well. For many many years though we've had GNAT, a free software project and GCC frontend. We are truly lucky to have it developed by it's corporate steward which is funded by dual-licensing the compiler for FLOSS and commercial support contracts.
jmilkbal··on Learn C
It's a very personal decision. :) You're not going to be popular on HN with a language like Ada. You're also probably not going to find a company looking for Ada developers, though I, myself, do Ada work for pay.

The Ada way of doing things really is a whole other world with completely different goals in mind than what fanboys and fangirls (I'm using the term dismissively, but there are real problems with new languages) will tell you about the new language they're using that was thrown together last weekend. Ada, of course, is far from perfect, but the blemishes like unbounded string syntax (I hope to see that fixed next revision! Ada just had a new revision!) are not enough to put me off from all the safety and checking the language does for me.

I must tell you that it was the winner of a DoD contest to create a kind of perfect language. There was a document called the Steelman that outlined everything the DoD's perfectly readable, maintainable, reliable, safe language would look like. Three of the four entries were Pascal-derived, not C!

If there is one thing Ada will do for you, if you let it, is demolish your ego. Every stupid thing you do will be caught by the compiler and you will scorned. The compiler will piss and moan catch all sorts of fantastic errors that you'd have to pop into a debugger for in C. Some folks have this notion that they are infallible, but "to err is human", right? You're welcome to turn off the checks in specific instances or project-wide (if you're nuts), but this isn't me. I'd love to think it is—and I write pretty great Ada these days—and I still don't have the gaul to turn off compiler checks.

Everything isn't a pointer in Ada, we can nest functions. Hell we nest packages and do sorts of things that just don't translate to Java, C++ or C, but now I'm just rambling.

I think Ada is a great choice for anything more than a shell script. Learning it introduces you more to a software engineering mindset because the language is built for software engineering, not hacking something together— though, in time, you will be capable of it. It's not the change of mindset like switching from procedural to functional, but it may be just as enlightening.

jmilkbal··on Learn C
They took the code from the Ariane 4 and stuck it on the Ariane 5 assuming all would go fine.

While a famous incident attributed to Ada, I can safely say that C and other popular languages have done far more damage. Even if not in terms of exploding rockets (I don't know), but time lost debugging, fiddling with checks that would be handled in other languages and so forth.

I like to tell people with Ada I can spend my time adding value rather than fighting against the language because of it's minimalism and the bugs that come with that.

jmilkbal··on Ask HN: Freelancer? Seeking freelancer? (June 2013)
SEEKING WORK in Omaha, Nebraska, travel possible, remote preferred. jrrd@kmbll.com

I build value and limit development costs by approaching all software as long-lived projects which require a language that supports long-lived projects that helps create better software by virtue.

I develop with the Ada language with 7 years of experience developing well-documented, well-tested software with a focus on the web building software using Ada Web Server, MySQL and PostgreSQL databases, various JavaScript libraries, REST APIs, Schema-defined XML and more.

I've spent 5+ years working remotely with an Ada development team for an American company.

jmilkbal··on Google blimps will carry wireless signal across Africa
In the areas where these blimps will be deployed, there almost certainly hasn't been the same discussions of privacy, tracking, corporate abuse, data breaches and perils of giving personal information out on the web nor the 20 years of background to go with it. You don't suppose Google will be educating the future web users to protect themselves from Google, do you?
jmilkbal··on You’re Too Cheap to Fly Faster
From my understanding and someone editing Wikipedia, Amtrak has priority by law [1], thought the Amtrak page mentions a time window which the trains must hit to receive priority [2]

1. https://en.wikipedia.org/wiki/Trackage_rights 2. https://en.wikipedia.org/wiki/Amtrak#Trains_and_tracks

jmilkbal··on Finnish MeeGo Startup Jolla Reveals First Phone With Customisable Shells
Mozilla receive ad revenue from Google. AFAIK Google has no control over Mozilla except obviously enabling Google to preemptively place a cookie on users' machines using the default, Googley homepage. Google integration, by definition, defies Mozilla's mission, but it's not because Google controls them. I'm okay with the integration knowing that I can fix it, though I wish there were a start-up option for novices, though.
jmilkbal··on Google Buys a Quantum Computer
I hadn't considered just how radically different a quantum computer would look. That is really something else, like the gauss gun from Half Life.
jmilkbal··on Engineering the $325,000 Burger
I don't have much faith in the patent or global food system to create something with "ineffable 'quality'". Once the local food conglomerates are able to produce this, it's all about a price point and most frequently that price point is so low that anything you'd describe as high quality is not available. Think Salisbury steak. What will end up happening is a stratification of meat. Those with higher disposable incomes will eat dead things and the impoverished will get the poor economies of scale.

You may find my lack of faith disturbing.

Edited for Vader.

jmilkbal··on Engineering the $325,000 Burger
I said mixed feelings because that exactly how I feel. It's more hesitant, but I suppose you could say I'm cautiously optimistic.
jmilkbal··on Engineering the $325,000 Burger
I have a lot of mixed feelings about developments like this. On one hand, I'll tell people that food for me is about quality and flavor. I'm not opposed to pink slime for what it is, but because it just makes for a poor result. I'm in favor of this on a sustainability level, but very opposed on a quality level—not consistency and reliable textures and taste, but that sort of unquantifiable property that things exude when they just feel right. That's quality and it's just not going to come from a lab, in my opinion. Meat isn't just about texture and a taste, it's about /terroir/. Meat can be raised sustainably and humanely, it just isn't as appealing to your local food conglomerate looking to work on economies of scale. We can all eat /better/, live /better/ and be /better/ without all the trade-offs if we'll put a little more thought into our lives and a have a little more moderation of consumption. Oh, and waste less.
jmilkbal··on Learn You a Haskell for Great Good
I use Ada (a proper noun) regularly. It is not a functional language, but encourages a lot of the same things that functional people like to talk about. Ada is a wonderful language to use. It's rather boring and uneventful and is not accompanied by buzz words, but most of the Ada folks I know (converts or otherwise) all suggest that they're accomplishing more in less time with fewer bugs than they get with other languages. A lot of the new, buzzy languages seem to be solving problems that Ada took care of in the 80s and 90s. It's definitely worth a look if only to improve your approaches to software.

Edited for fun and grammar!

jmilkbal··on Common Pitfalls in Writing Lock-Free Algorithms
We can get high performance coupled with safer ways to deal with locks. You don't need to be afraid of locks so much as find something that handles them well along with whatever else you need. In Ada there exist "protected" objects and types, a protect object being either a singleton or an instantiation of a protected type. Protected types are one way to synchronize threads and provide access control to data safely. There are protected entries with queues, protected functions which can only read the data being protected and protected procedures which while having the ability to write to protected data are guaranteed to only be allowed access one at a time. There's plenty of great features of the built-in tasking to go along with protected objects like selective entries, time delayed aborts and a ton of other stuff. Ada really hits the mark for locking. If you don't want locks, but still want synchronization, there's also the Ada rendezvous. Good stuff and even more robust with the new 2012 standard.
jmilkbal··on Let’s Say FeedBurner Shuts Down…
They barely care about FeedBurner as it is. They've discontinued all of the advertising intergration, not updated the blog in any amount of time nor do you really get that much of the product itself. There's some pretty basic Google Analytics connection, but the main data we get out of it is download numbers for our podcast (http://76streetpod.com) and podcast network (http://76streetnetwork.com). It seems like every couple weeks the statistics stop for unexplained reasons only to have the Google group light up with nary an explanation. Along with mostly useless developer documentation for how the product outputs what it does or how it changes entries in a feed, FeedBurner is a useless hunk of crap that is almost certain to shutdown. An recent gripe is that when you use it as a feed proxy it doesn't pass along subscriber numbers like any other good feed parser, so a FeedBurner feed of a FeedBurner feed doesn't pass long info to the original FeedBurner feed or feed (but will pass along downloads, though it's only because FeedBurner is just a glorified Location header then.) I originally only went with FeedBurner over an open solution for expediency, but I've never liked giving Google more information on our users or giving up my control of our feeds to a product that has been limping along for years. It wouldn't take much effort to replicate FeedBurner. Maybe it's time I hunker down and do it. I've been planning for a FeedBurner switch since the beginning by using its "branded" feed feature and using a subdomain of ours for feed hosting. I hope everyone else has been wise enough to do so, as well, though looking at our network membership feeds, I know they haven't.
jmilkbal··on How We Went from 30 Servers to 2: Go
I'll give an anecdote. I've spent the last 7 years using Ada, a language that is /both/ interesting and obscure, almost exclusively. It's really a fantastic language that is frequently neglected much like poor Go, but with more merit. Anyway, in preparing the launch of my company's first iteration of its podcast network (http://76streetnetwork.com), I absolutely wanted to use Ada, but the allure of the utterly fantastic tool support and breadth of libraries available for Java had me up and running in a day or two despite having never written anymore than basic hello world-like crap with it in the past. There's really nothing crazy about Java, you're right, but I live for coding and I have a deep interest in quality software development, but I guess I'm just looking for a paycheck for this side project that will never make me any money! Ironically, Ada is what pays my bills.
jmilkbal··on How We Went from 30 Servers to 2: Go
It could also be said that developers who use established languages are excited to get things done rather than reinvent wheels continuously.
jmilkbal··on Web Development: A Crazy World
In the 1970s, the US DoD had what one could parallel to SOA. They had hundreds of languages; they'd start a new project and with it came a new programming language, stack and toolset. They created the High Order Language Working Group which worked on a document of requirements for one language to rule them all, the Steelman. A competition was had to which 4 colorful languages were entered. The winner, Green, became Ada which coincidentally has just wrapped it it's latest language revision process at ISO. Much of the Steelman focused on maintenance, reliability, readability and other traits that make for good software that will last. It is a good thing take that step back and make sure we are programming up to her level.
jmilkbal··on Arch Linux Handbook for Kindle rejected by Amazon
Another day another headline of a closed repository rejecting something. In this case, it's information for an open source project. Nevermind that these repositories are not beholden to us, as a FLOSS proselytizer, it pains me that my peers so readily build value for these closed repositories in much the same way that publically-funded research papers get stashed behind paywalls. Models exist for publishing for profit outside of the walled gardens and they do succeed. If a potential publisher can be convinced to give it away and pray, so be it. As a community we should really determine where our allegiances lie and what are real priorities. It's trivial to put a book on a E-reader and just as trivial to run a website to publish on.
jmilkbal··on Captchas Are Becoming Ridiculous
The paranoid, tin foil hat wearing part of me has always put post Google acquisition Recaptcha in the must-be-part-of-the-long-arm-of-Google-tracking category of services encouraging me to do my very best to avoid allowing it to run in my normal browser session.
jmilkbal··on Rust - a new programming language from Mozilla
Ada's verbosity is one of it's best qualities making it perfectly suited for our large, geographically distant team. There are far less questions about the purpose and meaning of code when its in Ada. Seriously! And to boot the documentation writers have fewer problems determine this either since it's all spelled out in plain language. Of course this applies some to Pascal, Oberon and Modula for example, but they are missing other things that make Ada a great choice.
jmilkbal··on Rust - a new programming language from Mozilla
Ada wants to catch as much as it can before runtime. To that end, it is one strict beast when you're used to all the willy nilly (and unsafe) constructs that we can beat C into doing. Ada absolutely is harder; it's built for hard problems. I don't intend to turn away from the topic of TFA, but Ada is on quite a different plane than C for a number of reasons--reasons that I think are compelling. C is wonderful for creating a foundation for low-level software as it has demonstrated for what seems like an eternity, but beyond that--and I think the crazy things we've done over time to make it a little easier to use reflect this--something with more high-level, safe, readable, yada, yada, yada is desirable if not absolutely needed.

Dynamic allocations in Ada are a cinch by the way. We use the "new" reserved word.

subtype Hacker_News_Article_ID is Natural; -- Numbers 0 .. Integer'Last;

type Article_Handle is access all Hacker_News_Article_ID; -- "all" reserved word used allows access to variables on the stack.

Favorite_Article : aliased Hacker_New_Article_ID := 3793716; -- "aliased" so we can point to this stack variable.

Article_Pointer : Article_Handle := Favorite_Article'Access; -- A sensible default perhaps.

later on...

Article_Pointer := new Hacker_News_Article_ID (Whatever);

Good luck!

jmilkbal··on Rust - a new programming language from Mozilla
I feel like I'm beating a dead horse, but I really can not grasp what the catalysts are for creating Rust or Go or Julia or other new languages that want to be safe, reliable, readable, etc.. 30 years ago these problems were solved in a language Ada. Its exact requirements include all of those and more.

See for yourselves: http://www.adahome.com/History/Steelman/steelman.htm Later revisions have well-though-out rationales that show off all the changes: Ada 95: http://www.adaic.org/resources/add_content/standards/95rat/r... Ada 2005: http://www.adaic.org/ada-resources/standards/ada05/ Ada 2012(!!): http://www2.adacore.com/wp-content/uploads/2006/03/Ada2012_R...

The steelman was the end revision of requirements for the original language. There is a comparison of C/C++/Java/Ada wrt the steelman available as well. Ada has become so much more since this document and it's original version one really must see it to be believe it. :o)

As a community we have a tendency to embark on projects on a whim, but the effort, time and money required to bring a language to maturity is enormous. Even then any deficiency a preexisting language may have surely is not so insurmountable as to make it viable to develop a new language in house.

Can we please have some sanity? Can we please look for mature solutions?

Edit: Ada has an amazing GCC frontend developed largely by a successful opensource company (with just massive customers across the globe) and is available across all of its targets: the bsd's, solaris, linux, mac, haiku, android and more. It's a great solution that is hard to ignore.

jmilkbal··on Upcoming changes in Google’s HTTP Referrer
No, but a privacy conscious user would prefer to use Chromium which doesn't come with the Google privacy invasion built-in.
← PreviousPage 2 of 3Next →