When playing the real game a character explains this before you get started. I chose not to show a character message for now but maybe I should when you first scroll it into view.
1,589 karma · joined September 26, 2012
nakazawa.tech
When playing the real game a character explains this before you get started. I chose not to show a character message for now but maybe I should when you first scroll it into view.
*Some companies I worked at called it NUX because FTE would be ambiguous as it usually means "Full-Time Employee".
When I had something fun I got a few keynote slots at React and web conferences in 2023 (that's where the resume comes in, I guess?) and while I put together the presentation I also put a publisher deck together, mostly just for fun. The game was fully embedded in the slide deck just like it is now on the website, and how I did it in the public presentation (see: https://www.youtube.com/watch?v=m8SmXOTM8Ec ).
A mutual friend introduced me to Null, we had one meeting, and that set me on this path. I didn't seriously talk to other publishers.
I'm afraid this story is not super repeatable and mostly just hard work and serendipity. Before all that I spent 10 years as a teenager and early adult building games and social networks, and than I spent 12 years at Facebook & Stripe.
I wrote about my reasons for starting a company here: https://cpojer.net/posts/building-a-company
Firefox has not been a focus for the game as it mostly ships on Chromium/WebKit based browsers/app wrappers, but the landing page should still work great.
And the corresponding dunkel-theme: https://marketplace.visualstudio.com/items?itemName=cnakazaw...
I have a bunch of set-up tips on how to use these across all tools here: https://cpojer.net/posts/the-perfect-development-environment
I have recently gotten back into it to explore things I never got a chance to do before like building an AI and fog-of-war. Currently the game is inspired by Advance Wars, and you can see me play against my AI here: https://m.youtube.com/watch?v=bGeEeti22bM
I’m tweeting about the technical details and progress on Twitter:
* Basic explanation and code examples: https://twitter.com/cpojer/status/1460221157634830337
* Map Editor: https://twitter.com/cpojer/status/1488510688389566464
* Fog of War: https://twitter.com/cpojer/status/1547967785015189504
* Testing Infrastructure: https://twitter.com/cpojer/status/1538299796334686208
* Random Map Generator: https://twitter.com/cpojer/status/1537444893580136454
I’m currently working on the game design to make it “inspired by Advance Wars” instead of just a clone.
You can define a base config for your repo, and then inherit two sub-configs from it each with different runners and mutually exclusive selection for tests (by suffix, folder, or any convention that works for you).
The good news is that we have never been shy about making breaking changes and we are working on cleaning the house and making many legacy components optional, all while bringing the existing community with us.
As for mocking, you don’t have to rely on Jest’s inbuilt mocking libraries and you can use the ones you like better.
If you care more about raw performance and ES module support and less about isolation, check out the jest-light-runner: https://github.com/nicolo-ribaudo/jest-light-runner
We also mentioned it in our Jest 28 blog post: https://jestjs.io/blog/2022/04/25/jest-28
I’m wondering if it’s time to consider taking a big step and making this runner the default, and give people the optionality of isolation. However, in my past experience at large companies (both first-hand and second-hand experience), the lack of isolation in tests led to major reliability problems with testing infrastructure. I’m still feeling like it’s the better default today, but maybe we should have a serious discussion about Jest’s next set of defaults.
There is a fantastic post by Ben McCormick about the up and downsides of this system: http://benmccormick.org/2016/09/19/testing-with-jest-snapsho...
Snapshots aren't the only feature of Jest; it is simply one assertion in our assertion library. There is a ton of other stuff in the framework that makes setting up a test environment and writing tests easier.
My philosophy for building a test framework is to build a good feature set to help you out in any situation but the user should be in total control. This allows you to find the best way to test your code which I've found to be extremely subjective. The choice of test framework and test methodology seems almost religious at times and I've deliberately tried to stay away from these conversations.
* I agree regexes suck but that's all we had five years ago when it was started. Would love to move to a glob system incrementally but most of that will have to come from the community. I'm also still concerned about performance. We match things against tens of thousands of files a lot and regex seems strictly faster to me but I'm happy to be proven wrong or shown that it won't be relevant. * There is one minor issue with create-react-app's recommended use of node_modules to split up things. I would recommend lerna for multi-package development ( https://github.com/lerna/lerna ) and we are hoping to put whatever fix in place here that will work well. There are workarounds but they aren't great.
If you are curious to find out more about why we built it, please read our blog posts, beginning with one about testing performance and our unique constraints at FB: http://facebook.github.io/jest/blog/2016/03/11/javascript-un...
Finally, test runners tend to get stale. Any large organization will run into trouble with any kind of tooling as companies scale up engineers or codebases. Testing is no different and we aimed to solve those problems for Facebook; getting to open source our solutions is an added bonus and we are excited to work with the JS community to build the best tooling we can possibly build.
I agree local development with many packages can be hard. For Jest we adopted `lerna`
See https://github.com/facebook/jest and https://github.com/lerna/lerna which makes cross-package development in a mono-repo a lot of fun. Maybe that solution will work for you?
https://facebook.github.io/jest/blog/2016/10/03/jest-16.html
If your test is fully CPU bound and limited to one core, it probably won't be faster with Jest. If you split it up across multiple files, it will parallelize tests.
I am however interested in running Jest within Electron to provide better visual debugging while people are writing tests :)