This looks like just what I needed when I built my "admin ui" last year.
Instead of building an admin ui with Django or similar, I encourage you to just stick with a web-based spreadsheet for your internal users (if you have a small team, technical teammates, startup, etc).
In that case you may not even need to build a web based one. There's lots of nice DB GUIs which will connect over an SSH tunnel. If you're after a record editor, they're often enough.
I think regexr does a better job of helping you to understand exactly what is happening in the regex. I typically reach for debuggex when I already have a decent understanding of how to accomplish what I want and just want a simple way to edit & test, I think the interface is less busy for that case.
In addition to this list, for those doing node monorepos in 2022, the extensions that I think you must use are:
- Github copilot - like autocomplete on steroids.
- peacock - change the workspace color - helps reduce mental load when working on different projects.
- tag autorename - this should be built into vscode, saves a bunch of keystrokes
- snippets - this is a category of extension. Find whichever snippet lib is out there for your stack.
Although that plugin seems trivial, for me, when working with multiple code repos, it really does help to organize thoughts quickly. I get multiple interruptions daily and being able to quickly bounce between repos, using visual cues, helps alleviate context interruptions.
Interesting read. Do you recommend a resource to learn rails for the reactjs developer? Seems like only the opposite exist nowadays.
As someone who created their app in Next.js this year, I can tell you the Node.js ecosystem is in absolute shambles. We are making a WYSIWYG / ecommerce platform for authors, so we need the ability to make and preview live changes.
After finishing our MVP with a no-code solution, we decided to move to a custom Next.js app in as little time as possible. Big mistake. I had the urge to dig into Rails but I was much more comfortable in React. That being said, it's been a nightmare dealing with package upgrades, ESM vs CJS, running tests, adding Typescript, etc.
I believe, for example, creating the preview component would have been significantly faster in Rails than Next.js.
Recently we migrated to Next.js v12 for speed improvements. So many roadblocks. It took forever to debug. Again, mostly due to dependency resolution issues.
Blitz.js is supposedly going to be the Rails of JS but there is no way they'll ever have the support that either Next or Rails will receive.
CQRS on its own isn't really going to get you what you want here as it's more about separating commands from queries.
For auditing, rewind, recovery, change history and other perks then Event Sourcing would be closer to the solution - but you shouldn't really be choosing ES just for those perks. ES should mostly only be considered in situations where complex data and business rules are being interacted with by simultaneous actors (financial systems might be one example).
I'd caution against going with ES just for the sake of auditing as it is quite the paradigm shift in both client and server architecture and you will need to be comfortable with eventually consistent systems and higher overall system complexity.
I just built my MVP in a Next.js monorepo. We built the mvp in a few weeks and actually landed some real customers with it.
But I knew doing it in Rails or Django would've been faster, but I haven't got enough experience with either.
Let's say I want to create my app in Rails (or django). I don't need it to be pixel perfect, but I do want some flexibility around the UI. ActiveRecod is fine. Can I just plug this into the admin and customize as I see fit? I know Django has a built-in Admin, does Rails?
FWIW, I have used Django (without the admin) and tried learning Rails several years ago but it was too overwhelming for me. Rack middleware, the ruby syntax, the conventions—all of it seemed over my head. But if I can learn redux, react, etc, I feel like I can do Rails too.
Do you have any recommendations on resources? I want to learn how to make something that looks really good, is convention-based, lets me plug in my custom code when needed, and lets me prototype fast as hell.
I can't speak much about Rails, as I've only played with it. But I've used a lot Django in the past.
Regarding the Django admin (in rails you have ActiveAdmin[1]) think of it just as a glorified database explorer. It is an internal tool for developers, product managers and maybe for your support team. It is in no way thought to be used by end users. Every attempt I've seen to use it as such was a catastrophic failure.
With Django, if you know plain HTML and CSS, with the tools I've mentioned in the comment you're responding to, you can build almost anything... For example, let's say you need a highly interactive client side table.... you can always just attach a Vue or a React component for it by using Unpoly compilers [2].
I'd say this stack is less useful the more your app needs to work fully offline... but if you don't have that constraint... I cannot think of anything that can't be built faster and safer. Just an example: Authentication is something very risky to do your self, and has ton of corner cases. In Django just plug django-allauth, configure a few settings and done! You have a rock solid battle tested well documented authentication system, which otherwise would take you months or years to get right (both featuer, and security wise). Check django-packages too [3].
And regarding learning resources, the official documentation is awesome. You have also popular books such as Two Scoops Of Django among others. And almost all video learning platforms have quite decent courses.
Ok I have another question. On social platforms like facebook, whenever the creatives are refreshed, the ad set is put back into a "learning phase", which we're told to avoid.
So what is the best way to iterate on new creatives without re-entering the learning phase?
Ab test say 20 creative in an adset and let Facebook find the best creative for you in a cbo. Once set it is set and best not to change the creative just launch a new ad set with the new creative. You can change it but not ideal or how you should run Facebook ads with a proper account structure to maintain data transparency. Also with Facebook algo suspending and disabling ad accounts like crazy swapping creative after approved looks very fishy and can trigger negativr signals.
Instead of building an admin ui with Django or similar, I encourage you to just stick with a web-based spreadsheet for your internal users (if you have a small team, technical teammates, startup, etc).