Ha! I was going to reply to this comment - "If you're interested in data-all-the-things, then you should take a look at Hyperfiddle" - until I recognized the user handle and realized that you already knew about Hyperfiddle.
(for those reading along, dustingetz built Hyperfiddle)
still building! we killed the saas thing for now and are releasing a web framework soon - declarative crud apps from nothing but function defs, specs, and datomic! All IO is managed and composes like Datomic Peer fns compose. Userland has no async, error handling etc. Complex pickers with typeahead search, query params etc are declared in one LOC
I came to the same conclusion (and I'm not a big company that can afford Qt), so I built my own. Before Flutter got a new team @ Google ~3 years back, it was a set of tools for building cross-platform apps with C++ shared libs. A few years ago, this is what many of the FAANG companies were doing with their apps. Then, React Native was released and (I guess) the management at Google decided to take a different tack.
I did some research and found that Dropbox open sourced their internal tool for building cross-platform mobile apps in C++. Djinni (https://github.com/dropbox/djinni) uses an interface definition language to generate bindings between C++ & ObjC & Java (via JNI). From this, I added some tooling to help get the build setup and define some basic UI elements while trying to keep it simple. If you happen to give it a try, I'd love to hear your thoughts: https://github.com/adamtait/ctheworld
Thanks! I've updated the code to only save twice a day giving the EEPROM an estimated lifetime of 137 years. It's a little more inconvenient, but (maybe) less inconvenient than having to buy a new EEPROM (or likely a new Arduino) every couple years.
Join the community and take some classes with https://bradfieldcs.com/
They've got a great set of experienced & knowledgable staff, plus a group of other developers who all care about growing in their careers. Just chatting with the other folks there has been a huge boost in my career.
There's a team of scientists in the arctic who have an unconventional but (possibly) effective idea to reduce/slow the release of permafrost methane. The Zimov's have a Kickstarter up now - https://www.kickstarter.com/projects/907484977/pleistocene-p...
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
Same. Changing teams every two years seems like a long time. Not mentioned in the post, but I would bet that in Microsoft-land, the release cycle is about two years so it gives a natural transition point.
Let's say that an engineer takes 4-6 months to ramp-up on a new team, that still gives 18 months of full productivity. I'm sure that engineers reach 80% of the learning curve was traversed at 12 months.
The fact that it takes them 3-4 days to decide the next round of teams seems very long, in spite the post's insistence that it's short.
I'm interested in environments where teams chose a much shorter cycles. I think shorter cycles would present a different set of challenges, like reducing ramp-up times and cycle decision times. It may also be easier, like reducing the risk of a single cycle decision.
I have heard reports from a company with ~50 engineers who had 2 week cycle times, which was basically their sprint time though releases would have much more frequently. They had the advantage of a mostly homogeneous language and development environment. There kept in up for more than two years, at which point the company pivoted, no longer had a homogeneous dev environment and were doing more greenfield and less support/optimization/incremental-improvement. All reports were great. People were always surprised how the team would even out the teams when put in a single room, where the teams and choices were clear to everyone.
WalmartLabs - Clojure Developer. San Francisco (full time) or US remote.
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.
Our team has a unique environment. 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 pair program when it best suits the task. 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 and project management. We believe that people are more engaged, fulfilled and happy when they feel responsible for actually shipping their work.
What we're all about
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)
- contibuting back to the clojure & open source community
- having an engaging team culture and environment
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
We are just a part of:
- Walmart is the world's largest retailer and one of the world's top online
retailers. The scale of challenges and potential impact is enormous.
- Walmart is actually a group of retail businesses spread all over the world
including Sam's Club, Asda (UK), Massmart, Walmart International
- WalmartLabs is a software development shop responsible for tools, platforms
and applications for new products in all Walmart businesses. These
include platform tools, data analytics & machine learning, search engines,
mobile applications and physical retail tools.
Does this sound like something you're into? Shoot me an email at atait@walmartlabs.com
It's a Canadian thing. You'll find grads from all the Canadian universities are humble and practical.
Being a top university with grads in high demand, it's actually amazing that Waterloo grads haven't gotten a reputation for being more arrogant. I know I was at one point in my life.
As a Canadian I'd argue that this is a cultural trait that can easily be adopted by other countries. It is also a cultural trait we Canadians are rapidly losing. The reason Canadian universities produces these types of grads is because our universities are much more accessible to our citizens. It reflects our practical outlook on social programs like education, health care, and transit. Go on the TTC subway during the day and you'll find suits going to work on Bay St., kids going to U of T, and Tim Horton cashiers too. Get sick and you'll often have access to the same doctors that wealthy people do (though this has more to do with your geographic location... it's better to be in a big city).
You don't have to have a certain surname to get into Waterloo. You'd be much better off just scoring well on the Fermat Contest. When nobody gives a shit what you have, and it's what you do that gets you places, you tend to be more modest. We have a long list of financial tools to make school happen for students that have the talent and will to go. We also have a fairly strong set of public school systems that get students to university's door. Again, these schools are accessible.
One of the sadder things about Google's founder success is that more parents want to emulate this success for their kids by keeping them away from Canada's otherwise pretty good public school system. It will quickly deteriorate if more parents pick up on this trend to send their kids to private or Montessori schools.
"You don't have to have a certain surname to get into Waterloo. You'd be much better off just scoring well on the Fermat Contest. When nobody gives a shit what you have, and it's what you do that gets you places, you tend to be more modest."
Well put. UBC grad here, living and working in the valley now but if I ever wanted to raise a family I would think strongly about moving back to Canada purely for the great accessibility to quality public education.