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 C# 8: Switch expressions
I agree. It has the flexibility of Scala without the extra power/abstractions Scalaa gives you. I don't love Scala's flexibility but I put up with it because of its power, the trade off isn't worth it for C# to me.
runT1ME··on Consistency Without Clocks: FaunaDB's Distributed Transaction Protocol
>It reads the value of X on replica R2, which does not yet reflect W(X).

Why does someone want this functionality? Do you expect, say, Oracle to work this way? I honestly don't see this as a useful feature in a database that's operating at scale, but I'm open to hearing reasons for needing this.

runT1ME··on Subject: Airbnb (2011)
I would be very curious to see what barriers to entry AirBnB has developed vs. say, Uber. While both are marketplaces, Uber benefits tremendously from understanding traffic patterns, from seeing how people ride, from being able to give drivers the option of traveling certain directions, etc. All of that data is worth billions of dollars and not easily discovered, and technically quite challenging to gather and exploit.

From what I can tell, AirBnB has a brand and a web application. Technically, I can't imagine the latter is more complicated than the average e-commerce site delivered at scale. I am having trouble understanding how big data can create an advantage (maybe to help owners price their rentals?). If a competitor pops up, there's no reason owners can't list on multiple sites without facing any penalties.

AirBnB is not a company I'd invest in for the long term, while I would invest in Uber/Lyft. So, what am I missing?

runT1ME··on Ask HN: How's the Paris startup scene?
A couple things... salary is a small part of overall compensation. A 10% or more cash bonus is the minimum as well as some equity (which may or may not be worth something).

Health care is also free for most tech workers or if not free, a blip on the radar. I think I pay $40 a month for amazing healthcare (and I'm in SoCal not in the Bay).

runT1ME··on Async and Await in Rust: a full proposal
Async is strictly more limited than the more generic LINQ comprehension syntax.
runT1ME··on Async and Await in Rust: a full proposal
You don't need HKTs to implement 'do' notation. A good example is LINQ query syntax from C#! You actually have full blown monadic comprehension that you can use to easily write 'flattened' (ie, no async pyramid of doom) Future/Promise code with.
runT1ME··on Elixir at PagerDuty
>They just use Scala because it's a better Java that boosts their productivity.

I spent three years on the 2nd largest Scala 'team' in the U.S (first as an engineer, then leading a sub team), the problem is that using Scala as a 'better java' doesn't really buy you much productivity wise. A small percentage of sub teams tried using Scala this way and hit a lot of road blocks with the unfamiliar syntax, immature tooling, and other quirks.

The teams that had huge productivity gains were the ones who leaned heavily on the functional features WHILE caring about overall readability. That means yes, we used Scalaz but we discouraged the omission of dots and parentheses (as you mentioned), discouraged operator overloading/symbolic methods, and were very deliberate about when to reach for features such as HKTs or some of the more unfamiliar features of Scalaz.

Overall it lead to a very productive and fun development experience, and at the same time illuminated many ways in which the Scala ecosystem could also be improved.

runT1ME··on Towards a Type System for Containers and AWS Lambda to Avoid Failures [pdf]
I would take SOAP/WSDL over barely documented restful APIs and JSON...
runT1ME··on A Visual History of Eve: 2014 - 2018
I honestly don’t feel this way most of the time when doing pure FP. There are a few tools I wish were better but my code reuse is astounding, the refactor-ability is high, and it is easy to jump into unfamiliar code bases. Just mho from the experiences I’ve had.
runT1ME··on Scala Native 0.3.7
As a maintainer of one of the aforementioned libraries, I think the amount of dogma the proponents of them have is a bit overblown. :)

At Verizon I worked in projects that were pure FP/heavy Scalaz, as well as working in scala projects that were basically java++.

Both of them were projects I had architectural input on, but depending on the teams comfort level, we decided upon what style of Scala would be used.

The language is deeper than some others, and while a java programmer might be able to pick up python in a few days and vice versa, there's definitely going to be more of a learning curve to pick up 'FP style Scala'. However, we had people who had no prior Scala experience come in and dive in successfully to even our most hardcore FP projects. As long as you are OK with a bit of ramp up, the disparity between various styles of Scala are a bit exaggerated in my experience.

runT1ME··on What questions should I ask the engineering team I'm going to manage?
What is the single biggest bottleneck your team has in terms of delivering new features?

If you could spend a month fixing/refactoring/changing any component of the system, what would it be?

What % of time is spent on planning/estimating/ vs. implementing, is this the right ratio for the team?

runT1ME··on Snap is laying off about 100 engineers
I think there are two acceptable answers in addition from the obvious possibility of bad management.

1. Many engineers do not work on core products. Many of these companies operate like quasi accelerators at times: hire smart engineers since you can afford it, hire a few good PMs, see what happens, then market the most promising results. Twitter had Vine, Snap had Spectacles, and maybe one of the best examples of this is Amazon. They didn't need thousands of engineers to run an e-commerce site, but they did need them to build out a cloud, and Alexa, and a video streaming service, etc. Other companies want to replicate this model.

2. Scale is hard. As soon as you hit a limit of what off the shelf software or current open source offerings can do, you have a hard problem on your hands. There are certainly more 'web scale' products that exist now to make this process easier for startups, but it can still happen. It's also possible that even if there are products that can scale, it would end up being cheaper to spin up a large team of good engineers to replicate a commercial offering if you're optimistic about the companies growth.

runT1ME··on Escaping Hell with Monads (2017)
Have you looked at Scalaz's Task? It's used all over Verizon, it solves a lot of these issues that people run into with Futures (on how it handles errors in a lawful way).
runT1ME··on Home ownership is a lousy investment compared with stocks or bonds
in most states, mortgages are no recourse. If I borrow a million bucks and default on it, I lose the house and take a credit hit, even if I have millions in the bank. If I borrow a million dollars (margin) to invest in equities and I need to cover the loan, they can sue me/force me into bankruptcy.
runT1ME··on Are Monads a Waste of Time?
>Even the parts of Haskell that have the flavor of category theory aren't really all that much like category theory.

Can you expound on this? Just because the type classes defined in Haskell can't represent a wider range of categorical structures they purport to capture, does not mean that more structure doesn't exist throughout a Haskell code base. For instance, many argue that the only type of functors used in Haskell are endofunctors, but thats not really true unless we have a narrow definition of 'functors used in haskell', no?

runT1ME··on Apple Reports First Quarter Results
The biggest risk to Apple is the overall economy tanking, and if that happens, the Fed will lower rates. This causes inflation which eats away at the debt by making the amount 'owed' less (relative to the old value of the dollar).
runT1ME··on With teen mental health deteriorating over five years, there’s a likely culprit
Because Facebook/Twitter/Instagram is blocked at a lot of work places, while LinkedIn is not...
runT1ME··on Silicon Valley homes now out of reach even for big spenders
>, we actually have been below target inflation for years

no, we have crafted something called CPI, that charts how much consumer goods cost, and tracked below the target for that. Meanwhile, coastal RE, equities, business valuations and skyrocketed at unprecedented rates...

runT1ME··on Antidote: CRDT-based distributed database
Thanks for the reply. Don't you negate some of the advantages of CRDTs by mandating casually consistent environments? Can you speak to that more?
runT1ME··on Git is a purely functional data structure (2013)
Nice, good explanation. And one way to look at the State Monad is when you always want the 'latest version' of an immutable 'value' that keeps getting new versions. :)
runT1ME··on Antidote: CRDT-based distributed database
CRDTs accumulate garbage, and need a global "sync" to GC. How do you mitigate this from having performance impacts?
runT1ME··on Where People Spend the Most and Least on Rent in America
Studying CS? I live in Irvine and my father is from Mexico. :) I'm always happy to meet new tech folk around here and/or chat if you're interested. Contact info in profile.
runT1ME··on Polyglot programming communities
http://lambdaconf.us/

^ Fantastic conference btw. Very beginner friendly, welcoming, and intelligent speakers and attendees. Talks are all rated by general background knowledge needed, and an unparalleled 'hallway track'.

runT1ME··on Can Ford Turn Itself into a Tech Company?
The question becomes does the outsourcing firms they engage have the talent to build what they want (is top talent really applying to IBM/Accenture/etc?), and is the overhead of outsourcing (both monetary and time wise) going to allow them to be competitive with tech companies.

I'm going to argue for any large scale project, the answer will be no.

runT1ME··on Clojure vs. Kotlin vs. Elixir which has the brightest future?
You didn't ask, but Scala has by far the most commercial usage , far ahead of the three mentioned. It's quite different than Clojure and Elixir, but anything you can do in Kotlin you can do in Scala, and it will look and feel the same.

Lots of Scala shops stick to that style of Scala.

runT1ME··on Pure Operation-Based Replicated Data Types
> Sure, but let's say I was OK with a single point of failure.

I cannot imagine designing a system for production use where anyone is OK with a single point of failure being a single instance of a machine. I mean if we're playing hypothetical games you don't need a distributed system either, just get one giant instance and put everything on it.

runT1ME··on Pure Operation-Based Replicated Data Types
You need a server, which is a single point of failure. If you want redundancy, you now need a quorum in the event of a split brain. CRDTs have the advantage of not needing a quorum in event of a split brain. There is no way to 'lose' information. In addition to being resilient to network split brain, this allows you to make performance gains at the sacrifice of consistency, where you could buffer your updates to other nodes.

Operation based CRDTs do seem more limiting compared to State Based though, so you're at the mercy of your data structure being able to be represented as a CRDT.

runT1ME··on Clojure/Conj 2017 – Opening Keynote by Rich Hickey [video]
>"Some of the biggest errors are subtle failures in the implementation of business logic

Static typing can prevent errors in business logic.

>various memory leak problems - locking issues - race conditions

All are bugs that static typing has had tremendous success in preventing. Have you any experience in a HM like type system?

runT1ME··on Clojure/Conj 2017 – Opening Keynote by Rich Hickey [video]
What kind of errrors do you think are not caught with static typing? Usually people who say this aren't familiar with languages that have type classes...
runT1ME··on Google commits $1B in grants to train U.S. workers for high-tech jobs
>software engineer jobs will be blue collar, $40-$60k a year jobs, by 2030.

There have always been 'blue collar' engineering jobs. When I started in the tech industry I was making $13 an hour writing HTML and a bit of SQL here and there.

There are probably tens of thousands of "Software Engineers" putting together PHP sites, doing front end JS work at an entry level, hacking together some minor software customizations. I think you're right, this will become more prevalent. The world needs a lot more engineers to do this kind of work.

>There is a disinterest among business to pay higher, and higher salaries.

Evidence points to the contrary, salaries have skyrocketed in the last ten years... have you been paying attention?

← PreviousPage 4 of 26Next →