HN Theater @HNTheaterMonth

The best talks and videos of Hacker News.

Hacker News Comments on
Anthony Marcar - Clojure At Scale @WalmartLabs

ClojureTV · Youtube · 9 HN comments
HN Theater has aggregated all Hacker News stories and comments that mention ClojureTV's video "Anthony Marcar - Clojure At Scale @WalmartLabs".
Youtube Summary
There are many resources to help you build Clojure applications. Most however use trivial examples that rarely span more than one project. What if you need to build a big clojure application comprising many projects? Over the three years that we've been using Clojure at WalmartLabs, we've had to figure this stuff out. In this session, I'll discuss some of the challenges we've faced scaling our team and code base as well as our experience using Clojure in the enterprise.
HN Theater Rankings

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this video.
However, they don't just use any language for large scale mission critical projects https://www.youtube.com/watch?v=av9Xi6CNqq4
That's not empirical evidence that formal methods are more effective than other approaches. It just shows that the culture at these companies is conductive to using them. Walmart https://www.youtube.com/watch?v=av9Xi6CNqq4 and Boeing https://www.youtube.com/watch?v=iUC7noGU1mQ etc use different approaches. :)
skrishnamurthi
You claimed "There's absolutely no evidence that formal methods approaches are effective in practice." and said the only real use was for compilers. I pointed out that they are effective in practice in domains completely unrelated to compilers. Your response is to bring up a totally different point ("more effective than other approaches" — a statement that can't even be falsified), talk mumbo about "culture", and point to Clojure talks, which is neither here nor there. In short, you are perfectly suited for "conversations" on the Web.
yogthos
How do you define effectiveness? A company using a particular approach does not automatically imply that it's an effective way to do it. You can make any approach work if you invest enough resources into it.

To determine whether a particular approach is effective, it has to be compared against the available alternatives to determine whether it's effective or not. So, I'm a bit baffled by you saying that's a totally different point.

So, perhaps you can explain the metric that you're using here to define effectiveness.

Amazon was specifically using Clojure for the online checkout system, and the team bragged a few years ago how the system survived black friday without a hickup.

Walmart is using Clojure for their checkouts as well https://www.youtube.com/watch?v=av9Xi6CNqq4

Boeing is using it in the onboard control systems for the 737 Max https://www.youtube.com/watch?v=iUC7noGU1mQ

It's not some obscure microservice that some intern wrote over the weekend, these companies are using the language for critical applications, and the feedback from these companies is positive.

taloft
The Boeing video says Clojure is used for maintenance systems, not control systems. That’s an important distinction. Maintenance systems can go offline and the aircraft still flies fine. The critical control software is not written in Clojure from what I could tell.
hellofunk
Critical software is rarely written in anything except languages with explicit memory control, usually C++, and usually with very strict guides. There is a famous programming guide for flight control systems in particular that discusses how to properly use C++ for maximum safety during flight. It includes things like never allocating memory after take-off.

You wouldn't want Clojure, Java or any languauge with GC running in a pacemaker either. Those are all also very important distinctions.

user5994461
The majority of critical software is C, sometimes it's C++ or Ada instead.

C++ actually proved difficult to adopt over C. The language is too difficult and the tooling is too poor. It's too hard to run a static analysis or prove 100% code coverage.

hellofunk
I'm not sure what your evidence is for this, but I find C++ to be used far more widely than C in nearly all the companies I interact with that do critical low level work. And there is indeed plenty of information in the industry about flight control software in particular in C++. It's also very popular for embedded work, because C++ allows you to offload quite a bit of work to compile time that can only be done in C at runtime. And I've attended talks for security systems in C++ specifically because of control over exceptions and how to track unexpected events, which is something security professionals are very interested in.

With regards to tooling, the windows visual studio experience for C++ is widely counted as one of the best development setups in the industry for any language. I know lots of people working in other languages that envy what C++ developers get.

darksaints
The online checkout system isn’t a single service. I personally worked with the Delivery Promise service for a short time, and that service was composed of 8 different services...and that was just to calculate when we promised arrival to the customer during checkout. As in, they were just a single component of hundreds called during checkout. At the very least, none of those 9 services used Clojure.

If anybody led you to believe that their team did “online checkout”, but didn’t care to explain how small of a cog they were in an extremely complex system composed of hundreds of services, then you were grossly misled.

yogthos
I linked a talk from Walmart that explains exactly how they're using Clojure. I don't think I'm misrepresenting anything here.
darksaints
You absolutely are. You name dropped Amazon as some sort of proof that Amazon is used at scale, completely misrepresenting the scope of usage. Simply put, Clojure at Amazon is an insignificant and inconsequential symptom of a massive service oriented architecture with tens of thousands of software developers across four continents making independent decisions on how to write their tiny services.
yogthos
I think anything that's part of the sales chain can't be dismissed as insignificant. Just because Amazon uses other technologies, that doesn't diminish its importance.
jb1991
I can appreciate your desire to share the good news about Clojure adoption, but I don't think the language is in need of defense. It's used a lot all over the place, and you shouldn't feel the need to convince others of that. Because even if it weren't used hardly anywhere, it would still be a great tool for those of us who do use it. That it is in fact in use in a lot of places, regardless of its specific role, is just a nice added bonus.

If someone doesn't want to use it for this reason or that, it's their loss not ours. Those who need to find Clojure eventually will, because there is nothing else like it.

WalmartLabs - Clojure Developer. | SF | Remote (US Timezones) | H1B VISA You can work on Clojure at quite a few companies, but rarely can you impact millions of people at such a personal level. We're a small, flat team of engineers building mission critical applications for Walmart. We work with our own tools and make our own build-or-borrow decisions. Our culture is a healthy mix of sharing and pushing each other to be better at our craft. We use pull requests & code reviews liberally. We make refactoring time. We deploy often, with a single line of code run from a REPL. Engineers on our team are challenged to work through our full software stack and be part of our product management. We believe that people are more engaged, fulfilled and happy when they feel responsible for actually shipping their work. Some aspects of our work that are important to us:

  - high performance distributed systems
  - robust & well-factored codebases
  - simple & fast deployments
  - automating the hell out of operations
  - thorough system test coverage
  - managing our own development process and work backlog
  - pair programming when it makes sense (locally and remotely)
  - contributing back to the clojure & open source community
What we do:

  - write all our production systems & tools in Clojure
  - create and orchestrate massive distributed systems
  - spin up web services for handling large volumes of data
For a glimpse behind the scenes, check out a talk we gave at Clojure/West. https://www.youtube.com/watch?v=av9Xi6CNqq4. Does this sound like something you're into? Shoot me an email at [email protected]
WalmartLabs - Clojure Developer. | SF | Remote (US Timezones) | H1B VISA

You can work on Clojure at quite a few companies, but rarely can you impact millions of people at such a personal level. We're a small, flat team of engineers building mission critical applications for Walmart Grocery. We work with our own tools and make our own build-or-borrow decisions. Our culture is a healthy mix of sharing and pushing each other to be better at our craft. We use pull requests & code reviews liberally. We make refactoring time. We deploy often, with a single line of code run from a REPL. Engineers on our team are challenged to work through our full software stack and be part of our product management. We believe that people are more engaged, fulfilled and happy when they feel responsible for actually shipping their work.

Some aspects of our work that are important to us:

  - high performance distributed systems 
  - robust & well-factored codebases 
  - simple & fast deployments 
  - automating the hell out of operations 
  - thorough system test coverage 
  - managing our own development process and work backlog 
  - pair programming when it makes sense (locally and remotely) 
  - contributing back to the clojure & open source community 
What we do:

  - write all our production systems & tools in Clojure 
  - create and orchestrate massive distributed systems 
  - spin up web services for handling large volumes of data
For a glimpse behind the scenes, check out a talk we gave at Clojure/West last year. https://www.youtube.com/watch?v=av9Xi6CNqq4. Does this sound like something you're into? Shoot me an email at [email protected]
WalmartLabs - Clojure Developer. | SF | Remote (US Timezones) | H1B VISA

You can work on Clojure at quite a few companies, but rarely can you impact millions of people at such a personal level. We're a small, flat team of engineers building mission critical applications for Walmart Grocery. We work with our own tools and make our own build-or-borrow decisions. Our culture is a healthy mix of sharing and pushing each other to be better at our craft. We use pull requests & code reviews liberally. We make refactoring time. We deploy often, with a single line of code run from a REPL. Engineers on our team are challenged to work through our full software stack and be part of our product management. We believe that people are more engaged, fulfilled and happy when they feel responsible for actually shipping their work.

Some aspects of our work that are important to us:

  - high performance distributed systems 
  - robust & well-factored codebases 
  - simple & fast deployments 
  - automating the hell out of operations 
  - thorough system test coverage 
  - managing our own development process and work backlog 
  - pair programming when it makes sense (locally and remotely) 
  - contributing back to the clojure & open source community 
What we do:

  - write all our production systems & tools in Clojure 
  - create and orchestrate massive distributed systems 
  - spin up web services for handling large volumes of data
For a glimpse behind the scenes, check out a talk we gave at Clojure/West last year. https://www.youtube.com/watch?v=av9Xi6CNqq4.

Does this sound like something you're into? Shoot me an email at [email protected]

WalmartLabs - Clojure Developer. | SF | Remote (US Timezones) | H1B VISA

You can work on Clojure at quite a few companies, but rarely can you impact millions of people at such a personal level. Walmart's mobile apps are highly rated and the services we write to support them are the base of that success. We started from a small company acquisition with a single product. Today, we power a platform and a suite of products running on mobile devices and systems in retail stores.

We're still a small, flat team of engineers. We work with our own tools and make our own build-or-borrow decisions. Our culture is a healthy mix of sharing and pushing each other to be better at our craft. For example, we use pull requests & code reviews liberally. We make refactoring time. We deploy often, with a single line of code run from a REPL. Engineers on our team are challenged to work through our full software stack and be part of our product management. We believe that people are more engaged, fulfilled and happy when they feel responsible for actually shipping their work.

The environment at WalmartLabs balances moving fast and breaking shit, with the knowledge that we could break shit for 150+ million people every week. It's a tough balance but we've found the payoff to be worth the challenge and responsibility.

Some aspects of our work that are important to us: - high performance distributed systems - robust & well-factored codebases - simple & fast deployments - automating the hell out of operations - thorough system test coverage - managing our own development process and work backlog - pair programming when it makes sense (locally and remotely) - contributing back to the clojure & open source community What we do: - write all our production systems & tools in Clojure - create and orchestrate massive distributed systems - spin up web services for consuming & ingesting large volumes of data

For a glimpse behind the scenes, check out a talk we gave at Clojure/West last year. https://www.youtube.com/watch?v=av9Xi6CNqq4.

Does this sound like something you're into? Shoot me an email at [email protected]

WalmartLabs - Clojure Developer. | SF | Remote (US Timezones) | 1HB VISA

You can work on Clojure at quite a few companies, but rarely can you impact millions of people at such a personal level. Walmart's mobile apps are highly rated and the services we write to support them are the base of that success. We started from a small company acquisition with a single product. Today, we power a platform and a suite of products running on mobile devices and systems in retail stores.

We're still a small, flat team of engineers. We work with our own tools and make our own build-or-borrow decisions. Our culture is a healthy mix of sharing and pushing each other to be better at our craft. For example, we use pull requests & code reviews liberally. We make refactoring time. We deploy often, with a single line of code run from a REPL. Engineers on our team are challenged to work through our full software stack and be part of our product management. We believe that people are more engaged, fulfilled and happy when they feel responsible for actually shipping their work.

The environment at WalmartLabs balances moving fast and breaking shit, with the knowledge that we could break shit for 150+ million people every week. It's a tough balance but we've found the payoff to be worth the challenge and responsibility.

Some aspects of our work that are important to us:

  - high performance distributed systems
  - robust & well-factored codebases
  - simple & fast deployments
  - automating the hell out of operations
  - thorough system test coverage
  - managing our own development process and work backlog
  - pair programming when it makes sense (locally and remotely)
  - contributing back to the clojure & open source community
What we do:

  - write all our production systems & tools in Clojure
  - create and orchestrate massive distributed systems
  - spin up RESTful web services for consuming & ingesting large volumes of data
For a glimpse behind the scenes, check out a talk I gave at Clojure/West. https://www.youtube.com/watch?v=av9Xi6CNqq4.

Does this sound like something you're into? Shoot me an email at [email protected]

It was mentioned in passing at Clojure/West a few months ago. I wish I remembered more...this video might have more details: https://www.youtube.com/watch?v=av9Xi6CNqq4&list=PLZdCLR02gr...
HN Theater is an independent project and is not operated by Y Combinator or any of the video hosting platforms linked to on this site.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.