HNHacker News
TopNewBestAskShowJobs

runT1ME

1,605 karma · joined December 28, 2009

Programmer interested in functional programming, big data, concurrency, cloud, chat, databases and more...

http://www.twitter.com/runT1ME

submissionscomments
runT1ME··on Hazelcast 3.8.3
We use Hazelcast at Verizon Labs for a couple services, and one of the issues we ran into is how much work it takes to replicate split brain to test various and custom merge policies.

When reading that the distributed map implements the ConcurrentHashMap interface we were immediately skeptical, but it took more work to prove our skepticism was founded.

Hazelcast has a fantastic foundation for building clustered applications, but some of the design choices they made both internally and API wise are not choices we would have made.

We are moving to a custom merge policy because of some of these choices.

runT1ME··on Diminishing returns of static typing
Yea, puzzling out some scalaz code takes investment. On the other hand, the library is used for web apps, network servers, database based applications, streaming libraries etc.

It's incredibly multipurpose, more so than even Spring or Guava or LINQ, and these are things that developers regularly have to invest serious time in.

The argument is just that FP libraries (like Scalaz) have a bigger payoff in the investment.

At Verizon Labs were have 20+ microservices that I have touched/looked at. Some use Akka, some use Play, some use Jetty, some use Http4s but everyone makes use of Scalaz somehow.

runT1ME··on Diminishing returns of static typing
>They seem to have huge potential for hard to follow code as you need to mentally unpack and remember more layers of abstraction

That's the beauty of abstraction without side effects, you don't need to unpack anything. If you know what the inputs are and the outputs are, you don't need to know how it works or what type classes are even used to transform certain things.

People use sequence

all the time in Scala, not realizing it's only able to be implemented with HKTs of Applicative and Traverse. FYI, sequence flips a list of Futures to a Future of List, or a vector of Trys to a Try of Vector, etc.

runT1ME··on Diminishing returns of static typing
> An awful lot of energy was wasted memorizing various tricks and conventions to make do with loops, slices and maps where in other languages you'd just call a generic method.

I feel the same way going from languages with HKTs back to Java/C#...

Not sure why you think they're not as useful, it sounds like you're making the same argument as OP but just moving the bar one notch over...

runT1ME··on A Large-Scale Study of Programming Languages and Code Quality in GitHub (2014)
Yes, surely it's a coincidence that two of the most powerful statically typed languages have the least defects.
runT1ME··on Facebook's underclass: staffers enjoy perks, contractors barely get by
Well, if FB doesn't want to do massive wealth transfer to real estate developers and current land owners it would benefit them to get involved. Part of the reason salaries are immensely disproportionate to the rest of the country is cost of housing.
runT1ME··on Open-Sourcing Vespa, Yahoo’s Data Processing and Serving Engine
What do you mean you run the Open Source process at yahoo?

Hopefully Verizon's open source legacy will become even bigger and make it easier for these kinds of innovations to happen.

We've had some success a few cities over in Verizon Labs... https://verizon.github.io/

runT1ME··on Kotlin vs. Scala
I'm a Scala fan, so know that up front, but I don't think Scala is unreadable outside of language fanatics, but the language itself is definitely more complicated than Java/Kotlin/Go etc.

We've had a lot of success bringing people unfamiliar with the language (even with heavy usage of Scalaz) because we try to maintain the right ratio of "Scala experts" to "new to Scala". We end up with 1 to 7 more or less, and it seems to work well.

As long as there's enough resources to steer people away from writing ugly code, the payoff can be quite nice. I have never seen a null pointer exception, almost all of the issues we see in staging/dev are related to JSON/REST,and the only issues we've seen in production have been performance/latency related. Scala really allows us to narrow down the type of bugs we get.

runT1ME··on Stack Overflow Salary Calculator
Why does SO seem to completely omit "backend engineers". I don't work on web stuff, I write network applications/cloud services.

There are a lot of folks similar doing that at amazom, google, etc.

Does this seem like a huge oversight to anyone else?

runT1ME··on Eclipse Ceylon
As a huge fan of Scala, Ceylon is one of the other languages I'm keeping an eye on and hope succeeds. It is much more ambitious and forward thinking than Kotlin, and subsequently see it having a much longer future than Kotlin.
runT1ME··on The Problem with F# Evangelism
Oh yeah,

1. IDE experience is much better.

2. I like the fact that F# emphasizes the functional aspects, it's a bit of a 'tighter' language than Scala (despite the two crucial missing pieces) and so I think people could learn it a bit faster. Scala has things like structural typing, all kinds of optional syntax, multiple inheritance, etc.

3. Lack of flexibility in syntax is a plus imo for F#. Some of Scala's flexibility is nice, but some of it just confuses the newbies (like the various usages of `_`).

runT1ME··on The Problem with F# Evangelism
My previous job was working for a .NET shop that powered tons of automotive search engines etc. across the web. We moved to more and more functional concepts using C# as the team learned about them and had a lot of success with them. At a certain point, we explored using F#, but the lack of type classes & HKTs meant we kept having to repeat ourselves.

We ended up choosing Scala for some new projects despite having an inferior IDE experience and being unable to use some of our other libraries. I don't think I can emphasize how much not having type classes and HKTs hurts productivity once you buy into the fully functional mindset. We were extremely productive in Scala because the language was a bit more powerful.

I would love to use F# again, but not until the language adds those features.

runT1ME··on Our Broken Economy, in One Simple Chart
It sounds like we're agreeing? Low interest rates == more monetary supply == inflation.
runT1ME··on Our Broken Economy, in One Simple Chart
>Reduced of inflation allows accumulated wealth to mean more over time, whereas higher inflation puts pressure on workers to demand (and obtain) wage increases and keeps the inequality in check.

You have this backwards. Inflation allows those with debt (leverage) to disproportionately capture a larger percentage of wealth.

Those with more debt make out better... who do you think has more debt? Inflation is wealth transfer from the lower and middle class to the upper class.

runT1ME··on Our Broken Economy, in One Simple Chart
Don't confuse CPI with inflation.
runT1ME··on Ravens OL John Urschel, 26, retires abruptly, two days after CTE study
Take the helmets off. Players would no longer run at each other head first, and be forced to grapple a bit more. Concussions are en extreme rarity in grappling/wrestling sports. They can still happen, but it's a freak accident rather than an inevitability each down.
runT1ME··on Ask HN: What's your favorites conferences?
LambdaConf is small midwest conference focused on Functional Programming. Wonderful mix of beginner workshops, advanced talks and everything in between. Childcare on site, nice venue, wonderful food and a lot of really enthusiastic people willing to chat and discuss various topics of interest.
runT1ME··on Ask HN: What are some “damn good” fiction books to read next?
Anathem.
runT1ME··on Toward Go 2
>What I appreciate most about Go is that I am sure that I can look at 99% of the Go code written in the world and I can understand it immediately.

No you really can't. You can look at any given line of code and tell me what it does, where as it might take more time to parse any given line of Haskell, Scala, or OCaml longer.

However, expressivity in a large application pays a dividend tenfold, because the main challenge of reading code is not any given line, it is understanding the application architecture, the frameworks, the data flow and how it all works together.

> That is the reason there are so many successful new programs popping up in Go with large open-source communities.

Successful, or popular? Just look at Docker. Certainly popular, but check the bug tracker or talk to anyone with real world experience using it at scale and you'll be hearing a completely different story.

runT1ME··on Ask HN: What other career choices can one do with CS degree?
Thanks for the kind words. My suggestion, if you're willing to work in the U.S, look for a company that is actually doing FP (Verizon, Comcast, Stripe, some teams at Facebook, some teams at Twitter) and try to work there. Also, programmers are treated much better in the U.S. than they are in Europe from what I understand. Compensation, perks, respect, etc. are all immensely higher. Not as important as working with the right team, but it does help.

Our team is not perfect, we have a lot of the same issues you find at most companies(some good code, some bad, large company red tape, etc.) but, we also have a lot of good things: many people who either know FP or want to learn, good infrastructure support, freedom to innovate, lots of open source, etc.

It's enough of the good stuff that I'm much happier here than I was at my previous job. I don't agree that all coding jobs are the same. Most days I'm working hard but working on fun and interesting problems.

runT1ME··on Ask HN: What other career choices can one do with CS degree?
So, there are Scala teams doing functional programming. Have you worked for them and ended up not happy? It seems that it would be much easier to get good enough to join the team you want and appreciates you than to switch careers. Are you in the US?
runT1ME··on Exercise as a Preventive or Disease-Modifying Treatment for Dementia Brain Aging
Anecdotal to me of course, but I felt much better after I started getting adequate protein. I am still sore if I go really hard in the gym, but most days I feel very good after lifting if I take enough whey protein. Previously to my extra protein consumption I felt like I was recovering from the flu for a couple days after I had worked out.
runT1ME··on Belgian think tank study: universal basic income is a dangerous utopia
Nominal wages have increased since 1970. Where did the money go? It's not hard, it's basic math: deficit spending necessitates printing money (done in various ways, notably QE) , which eats away spending power.
runT1ME··on Why Threads are a Bad Idea (for most purposes) (1995) [pdf]
> I've never had a non-trivial debug issue caused by trouble using semaphores, mutexes

Sure, those are easy, but they don't scale. You'll often want non-blocking instead of semaphores for higher levels of parallelism and thats where you'll run into trouble.

runT1ME··on Ask HN: Do you work remotely? How did you get that job?
I started out on a 3 month contract with the understanding there would be a good chance it would either end in 3 months or I would move to the Bay Area after to renew. I flew to the office quite frequently. I worked hard to prove myself, and three months later after some negotiations I had a FTE offer for remote work.
runT1ME··on What Amazon Teaches Us About AI and the “Jobless Future”
I think you're severely overestimating how much an office worker makes or you underestimate how much a decent programmer makes. Though likely both.
runT1ME··on What Amazon Teaches Us About AI and the “Jobless Future”
What profession would you advise young people go into, if you are dissuading them from one of the few careers that can pay a living wage right out of the bat with almost unlimited upside potential (second only to law/medicine).
runT1ME··on Is Clojure dying, and what has Ruby got to do with it?
Scala has a collections library that heavily emphasizes immutable/persistent data sructures. You aren't forces to use them but it is idiomatic Scala to be "pure"/non mutating.
runT1ME··on Ask HN: Starting a project today, which web framework would you use?
If you're a MS/.NET leaning person, why not F#?
runT1ME··on Learn Kotlin in Y Minutes
Scala has parallel collections that allow for this, looks exactly the same syntax too.
← PreviousPage 5 of 26Next →