HNHacker News
TopNewBestAskShowJobs

Ixiaus

3,134 karma · joined June 24, 2009

submissionscomments
Ixiaus··on Why Cutting Carbs Is So Tough
There is no essential carbohydrate, the body can derive any glucose it needs from essential fats and proteins.

That said, I'm keto and find it difficult to stay under 30 grams of carbohydrates per-day simply because carbs are in so many foods. I've, a few times, gone "strict" keto i.e 10g< of total carbs per day which includes indigestible fiber and I (anecdata coming at you) felt great.

Ixiaus··on Why Cutting Carbs Is So Tough
I think if you framed what you're trying to say in terms of addiction, availability, and avoidability [of carbs] it would be clearer. That's my interpretation of what you were trying to say, which might be wrong.
Ixiaus··on Why Cutting Carbs Is So Tough
The body does not need exogenous carbohydrates, there is no such thing as an essential carbohydrate. Carbs are a useful tool but they are also easy to abuse.

The body is perfectly capable of deriving carbohydrates from essential fats and essential proteins.

Beyond the physical addiction there's also a lifestyle addiction, this is a similar problem chronic cigarette smokers who want to quit encounter. Sometimes they do quit and get through the physical discomfort of withdrawal but often fall back in because a pavlovian response has been built into many experiences like socializing, hanging outside and chatting, having a smoke as a break from severe stress, etc.

Because refined carbohydrates have been threaded through almost every food marketed to people in our society there are second order lifestyle addictions too which require clever environmental structuring, determination, and often times social support to overcome.

Social support is key and is often the failure point for most people. Particularly when engaging non-mainstream methods or ideas. Most people across many different social groups think the idea of self experimentation to be an alien or downright stupid idea.

[Edit] the body doesn't derive carbohydrates, it derives glucose.

Ixiaus··on 5800sq km iceberg breaks off Antarctica's Larsen C ice shelf
http://journals.plos.org/plosone/article?id=10.1371/journal....

fermatslibrary.com gets the credit for introducing me to this paper.

Ixiaus··on 5800sq km iceberg breaks off Antarctica's Larsen C ice shelf
I'm someone who did a few things after reading a research paper attempting to quantify the detrimental effects of climate change.

I no longer own a car, I bike everywhere.

I work remote 100%.

I do not eat beef if I can help it anymore.

I use the train for long distance personal travel. I still fly when it is for my company, though.

I take transit when biking would be too slow.

I signed up for my city's green energy program. I pay more to receive 30% of my energy use from wind farms.

I cancelled Amazon Prime.

I buy items locally as much as possible.

I avoid online shopping if possible.

All of my food comes from local, small producers.

Cutting consumption behavior down has, unsurprisingly, saved me a lot of money and these behaviors are reducing the amount of carbon I emit.

Ixiaus··on Two Commits and the User Experience of Git
I agree with you on your technical points; however, I still think it's a good analogy to use until something better with reach enters users minds.

Perhaps there is a better concrete example I haven't thought of. I'm curious to know what you think would be a better communication tool (this a serious question, I'm not baiting an argument).

Ixiaus··on Two Commits and the User Experience of Git
I think there may be better role models but I have a hard time finding ones that are jargon-free (to a degree, "pipes" and other terms are jargon but generally accessible to people who work with Linux), approachable, and functional for people that do not have the mental model.
Ixiaus··on Two Commits and the User Experience of Git
I agree that over use of a phrase can dilute a message but I think you're not acknowledging something important.

The phrase "Unix Philosophy" is a concrete, functioning example of compositionality.

Git is a pretty heavyweight tool and many of its commands are not compositional or built up from many smaller functional units. Git repos also do not compose, which is a significant flaw.

Ixiaus··on Language-agnostic schemas based on Haskell's type system
Neat. This reminds me quite a bit of the dhall language: https://github.com/Gabriel439/Haskell-Dhall-Library/blob/mas...
Ixiaus··on Open Sourcing our new Duckling – Probabilistic Parser Rewritten in Haskell
Not the op nor on their project but I do work at a company using Haskell to solve interesting theoretical problems and for mundane software like cli tools and grpc services and web services.

Most people have an assumption that production Haskell involves a lot of theory when that's actually more the exception I think. My day to day use of Haskell (with the exception of a few projects) is as a strongly typed imperative language. In order to use it in production in that capacity you should have an intermediate level understanding of the type system so that you can wire library apis up and use them.

The productivity gains from Haskell's type system are quite large and they compound, particularly when you have multiple people massaging the​ code base.

Ixiaus··on Open Sourcing our new Duckling – Probabilistic Parser Rewritten in Haskell
Not the op nor on their team but I do work at a company using Haskell for grpc services, internal cli tools, cloud web services, and heavy duty (and high performance) parallel parsing.

I'm a polyglot programmer and appreciate the features of many different languages but I couldn't imagine foregoing the benefits of Haskell's type system, reasoning about code algebraically, and leveraging the rock solid GHC RTS for some of the mission critical things we're doing. Rust would probably be my only other consideration for performance reasons but its ecosystem is more immature than Haskell's and some things are very clunky to express in rust (even with its enlightened type system) that are very clear in Haskell.

Haskell may not be the right choice for every team or project but it certainly has been for me for many years now on many (though not all) projects.

Ixiaus··on Award-Winning Nautilus Enters Rough Waters
Or they aren't charging enough.
Ixiaus··on Alpaca – Functional programming inspired by ML for the Erlang VM
Rust?
Ixiaus··on Linear types make performance more predictable
Only if your program doesn't type-check ;)
Ixiaus··on Linear types make performance more predictable
It certainly inherits a lot from that culture but there's a fast-growing number of industry programmers using Haskell that are bringing more approachable styles to the language; most notably: using partial functions as little as possible, using let bindings more often, using applicative-do, making variables names a bit more descriptive when it makes the waters clearer, using descriptive data type names, documenting the fields of records, documenting the arguments to a function if the types don't make it crystal clear, etc.
Ixiaus··on Linear types make performance more predictable
It's uncommon to see single-letter datatype names; the general idea being that designing your programs with a data-type orientation should provide the kind of description you're looking for; type variables are very often single letter since they're not very important to understanding (the exception being exceptionally unusual types).

Single letter bindings are not common in production haskell code though there are exceptions where it's very clear using single letter binding names is clear enough and not easily confused, like this for instance:

    -- | Produce @Nothing@ if the first argument is @False@; produce
    -- @Just a@ if the first argument is @True@.
    consMaybe :: Bool -> a -> Maybe a
    consMaybe b v = guard b *> pure v
but usually, most production Haskell (at least where I work and write it) looks like this (minus the top-level function documentation and all the surrounding types and imports, which are important for context):

    makeKey :: FormatTime t
            => t    -- Formattable timestamp, usually obtained with getCurrentTime
            -> Text -- AWS region, e.g: us-east-1
            -> Text -- AWS service, e.g: s3
            -> Text -- AWS signing key protocol, e.g: aws4_request
            -> Text -- AWS secret access key
            -> ScopedSigningKey
    makeKey ctime region service protocol key = ScopedSigningKey scope' sigkey
      where
        dateStamp = formatTime defaultTimeLocale "%Y%m%d" ctime -- YYYYMMDD
        scope'    = Data.Text.intercalate "/" [ pack dateStamp, region, service, protocol ]
    
        sign :: ByteArrayAccess ba => ba -> C8.ByteString -> Digest SHA256
        sign k m  = hmacGetDigest $ hmac k m
    
        kDate     = sign (encodeUtf8 $ "AWS4" <> key) (C8.pack dateStamp)
        kRegion   = sign kDate    (encodeUtf8 region)
        kService  = sign kRegion  (encodeUtf8 service)
        kSigning  = sign kService (encodeUtf8 protocol)
        sigkey    = decodeUtf8 $ convertToBase Base64 kSigning
Ixiaus··on Abstract Algebra (2016) [pdf]
It has a lot of application in functional programming languages, thinking of my programs algebraically has had a meaningful effect on what feels like "clearer expression of thought" in my code.
Ixiaus··on Sudan, Africa's most misunderstood country
I'm interested in what you've said here. Do you have a few books to recommend?
Ixiaus··on Why Do So Many Incompetent Men Become Leaders? (2013)
Perhaps a more accurate characterization instead of specifically being white, having an <attribute> of the dominant category of people in a culture (I'm using the word culture broadly, there are cases in which I do not think white males are the dominant nor revered category).

When you have a dominant group of people that share an attribute, I think anchoring and other cognitive biases will always play an influential role.

> Seen it many times.

Not sure if being intentionally humorous here, but I think it's funny regardless!

Ixiaus··on Uber Investigating Sexual Harassment Claims by Ex-Employee
Sure, we'll all sit down and stop engaging in the issue... Nothing to do here, this is entirely a non-male's problem!

Sarcasm aside, you're also not helping. Even if someone is off-base in their opinion or what they're writing, telling them to STFU is, in most cases, worse than their actual opinion.

Ixiaus··on Critical Analysis of Stretching Theory (2011)
Depends on the type of yoga too, I imagine. I've been rolling out my hip and practicing Bikram's yoga for a while with excellent results. One of the features of Bikram's is the number of "compression postures" but not sure if that's the same thing as what you're talking about...

Also for my hip (minor labrum tear).

Ixiaus··on What I Wish I'd Known About Equity Before Joining a Unicorn
JIRA is not that bad. It was pretty stagnant for a while but they've been improving it. I think JIRA is an invaluable knowledge capture tool, particularly when you're tracking down a difficult root cause and you want to keep a bunch of people in the loop.
Ixiaus··on What Romance Really Means After 10 Years of Marriage
Then, my partner and I are both crazy. Life's going to surprise you when you discover how failure prone generalizations are :)
Ixiaus··on Atlassian acquires Trello for $425M
What's wrong with it becoming a service you pay for? This is, in-fact, what you get when you entrust someone else's Software As a Service with your data and workflows... You do not own it, they do and it is their right to charge for it just as it would be your right to charge for some service you developed and maintained that people found useful. It is also your right to move your workflows elsewhere or to a desktop / laptop resident piece of software that's not owned by anyone!

Whining about a for-profit product no longer having a free-tier is odd to me. Either be fine paying for the service (nothing wrong with that) or pickup software that is free; I for instance personally use org-mode and Emacs heavily for all of my personal information management.

I also do not understand the sentiment that every product acquired will slowly begin to suck; that happens for some products sure but the converse is also the case.

To be fair to Atlassian, I used to hate Jira a lot but in recent years had to use it for work and it quickly grew on me; they are putting effort into improving their services / products, modernizing their software development processes and technologies, and delivering updates to their software on a regular basis.

If you're going to contribute here, please be more constructive or detailed. Why not talk about your ideas for a project that is free that anybody could install on their servers that does what Trello does if you do not like that they may begin charging for Trello?

Ixiaus··on Ask HN: What is the best Linux distro for a development laptop?
I use NixOS for my full-time development laptop and it's great. Declaratively specified OS environments are the bees knees.
Ixiaus··on Americans Are Putting Billions More Than Usual in Their 401(k)s
I just turned thirty and I can echo your sentiments; I'm saving aggressively and investing across a wide array of assets and tax sheltered accounts with the idea that I may at best retire early and be capable of taking care of myself into old age.
Ixiaus··on The Road to 2M Websocket Connections in Phoenix (2015)
What does presence use for its persistence layer? For its gossip protocol? Are you using plumtree, a fork, or something home rolled? Are you aware of Christopher's work with Lasp and the delta-CRDTs?

This sounds great and it's very idiomatic to OTP, it's like a web app VM.

Ixiaus··on GNU Guix and GuixSD 0.12.0 released
NixOS and nixpkgs is very functional, we use it in production at the company I work for and I also use it as my full-time laptop OS (it's great as a laptop OS).
Ixiaus··on Bluetooth 5 Now Available
Most chip manufacturers keep their firmware very close to the chest and from my anecdotal experience, a lot of that firmware is of a low quality; mush a smattering of shoddy chips together and you end up with really weird behavior.

FCC certs of a custom radio used with a bluetooth chip with a binary blob for firmware is the most painful thing I've ever done in my career...I think.

Ixiaus··on How Supervisors Work
No it was not, it was a home-rolled solution. Nerves is pretty neat but at the time I wrote our solution it wasn't as mature as it is these days. I rolled our own buildroot + erlang release + "firmware" deployment system (including the cloud infrastructure and software). Very fun project.
← PreviousPage 4 of 34Next →