It's not my jam, but it's def cross platform and used quite a bit afaik.
1,689 karma · joined March 3, 2021
It's not my jam, but it's def cross platform and used quite a bit afaik.
In terms of CSS; you'll need some form of styling in whatever language, there are plenty of abstractions on top of CSS if you want [something not css].
I would suggest having a look at Next.js if a web app would work, React Native (use Expo) if you want mobile, or Tauri if you want to focus on desktop (Electron, but in Rust, more performant, smaller size, more secure).
Another thing worth checking out is Flutter. I'm personally not a huge fan for irrelevant reasons but it is cross platform, and it's compiled not-JS (Dart).
I also want to say FE has come a long way, the web platform is much more stable, there are great frameworks and libraries, the tooling is amazing, and above all it's really fun and productive. Give it a shot, you might enjoy it. (Do use TS, or Rescript, or something, JS is better with types).
"As a language model developed by OpenAI, I am trained on many languages, including but not limited to: English, Spanish, French, German, Italian, Portuguese, Russian, Chinese, Japanese, and Dutch. What can I help you with today?"
I have tried Dutch and it's pretty good.
I think in general it's not that different from the search engines we already have, for many topics you'll find more results in English, but already automatic translation is pretty decent, so I think the barrier to consuming english content is only getting smaller.
I do think the ability to speak English can be a big advantage, even more so in tech. I think ChatGPT and co can actually be very useful tools for learning a language.
My main reason is speed; you can move very fast, and lots of the "boilerplate" stuff is handled out of the box.
I do keep post MVP in mind, it should be pretty easy to move parts to different systems if necessary. The most radical exit would be moving the Postgres DB elsewhere, or even self hosting Supabase.
It's good that it's possible, but I plan to use this stack as long as possible as it's great, and I have zero interest in managing and maintaining infrastructure.
As with everything; it depends. On your product and on your skills/expertise.
I think having both skills is ideal; be able to quickly get things done, but also be able to acquire deep knowledge when necessary. T-shaped skills.
In reality I think there is no clear divide. If you do the on demand thing, you'll encounter situations that require a deep dive or if you recognize the same patterns in different things. If you do new things learning is inevitable.
I don't share the concerns, I think there is no shortage of people with super deep knowledge on many topics and I think we are actually getting better in using that knowledge to everyones benefit. I'm thinking tools like Streamlit, Supabase and Framer. You don't need to be a FE pro to build a simple dashboard, you only need basic SQL skills to create a backend, and you with just design skills you can make great websites.
I think you need to make distinction between website and web application. The latter came later and is by definition a lot more complex, I assume this is mainly where the premise originates from.
But having gone through building websites with frames, tables, png's for box shadows and border radius, jQuery and php based web apps, and having spend many days making my grunt/gulp/webpack config work and supporting IE, I can with great certainty say things have never been easier than they are now.
Now, is it necessary [to build webapps]; Yes. Usability expectations have gone up, the level of details and polishing has gone up, more interactivity, and more sophisticated visual elements. Webapp now do things native applications could not do back in the day.
There are certainly use cases for it but also many downsides, it's mainly just hard to get the UI right.
Your first designs are going to be horrible, no way around it, just keep going, compare, reflect, learn, and things will get better over time.
If you can get feedback from experienced designers that will help a lot.
As to resources; Others mentioned Don Norman's book (and nngroup.com), great suggestions. I would also spend time looking at good designs and trying to figure out what makes them good. Just ask "why" about everything. "Why is this button this color, why is it this size, why is it placed here? etc etc".
Good design is about achieving goals, the better you get at focussing on those goals, mainly by asking "why", the better your understanding of design and your own designs will become.
Let me write out some facts: - You can obviously program pretty well with some 10 years of experience
- You know one language very well
- You have made (side) projects in a different language so you have the ability to pick up something new and build something with it
- N number of years experience on job listings is often not as absolute as it might seem
- Learning a second language is not the same as learning your first, it's much easier as a lot of concepts are the same or similar
> requisite skills (conventions, tool chains, libraries)
I literally google all of it + I browse Github projects; find some bigger open source projects in your language, see what libraries they use, how they structure etc.
> making the switch
I just start using it for work projects. You could also just apply for a job and see how it goes.
What matters in the end is; can you build [stuff] with it? If the answer is yes, great, you win. If not, maybe build some more projects. Obviously it's a spectrum but with your experience you are likely able to know if you can build enough to be useful. My guess is; you probably can.
I'm quite excited for this as Affinity Designer is still one of my favorite vector editors.
I do think it's relatively early stage. Yes, the email product has been around, but the more business orientated suite of products seems very early.
The email app misses some functionality, but what's there works and looks great. Calendar is progressing nicely. Drive is kinda useless beyond file sharing atm, it really needs a sync app to be useful.
Another qualm I have is that you can't buy extra storage, custom domains, etc. It makes little sense to me, for now it's fine, but at some point it might force me to find a different solution.
They certainly have a lot of work to do, and they need to get a grip on issues like this asap, but I'm willing to wait it out for a bit as I do like the direction, I think there is a lot of potential.
That said I am not sure I would move the company over to Proton like the issue raised, idk if it's ready for that.
Few tips :
- Analyze what you need to improve
- Trace examples (if you google for example "writing practice sheets" you'll find tons)
- Slow it down, as slow as you can, only speed up slowly later
- Practice things you struggle with in isolation, for example certain letters, or letter combinations
- Try to find joy in your practice; for example setting goals, maybe get creative and try some calligraphy? maybe combine it with journaling? something to motivate you
- Prefer shorter daily practice sessions over longer spaced out sessions
- Be patient and be mindful that it takes time, especially the beginning, don't give up too early
Not that different from learning an instrument btw!
To the actual commentary; I might be wrong but it’s giving me dogmatic vibes. All the things mentioned can be ok, sometimes good, and also bad in the wrong situations. Context matters. Doing the things described (in moderation) is not by definition bad.
This seems like a perfectly wasted learning opportunity for everyone involved. I would strongly urge the author to reflect on this as an important part of being senior is to lift other less senior people up so they can be productive and progress in their careers.
Rescript has a different approach which has lots of benefits, it is much better in terms of type inference, it's much faster, and I think it's fair to say safer. The tradeoff is that it's not JS, making it harder to adopt.
I do think they are doing a great job in taking steps to present the ocaml origins in more JS friendly patterns and syntax, but it still requires learning some new concepts.
I think a somewhat good comparison is; If Typescript is like C# for JS, Rescript is like F#/ocaml for JS. Different technologies have different tradeoffs.
They have C and CE (or AC) buttons to either clear the last entry or everything, similar to the app. You could very well reason they are sticking to convention.
Also in most basic use of a calculator it's quite fine to input the last number again, it's probably often even more convenient than backspace.
This makes the backspace swipe feature an extra, non-essential feature, and it's probably ok to not be discovered organically. Most UI is full of hard to organically discover accelerators aimed at expert users. They are intentionally not visible, to keep the basics simple for novice users.
The right question is; can people use the calculator app without knowing about this feature? The answer is yes, as many people do without any problem.
Again, you could have a discussion if there should be a visible backspace button, but accelerators are an important part of any well designed UI. To answer your question: They don't think it will be discovered organically, it's by design.
These are generally referred to as accelerators, and are by design harder to discover as they are targeted at expert users. You trade learnability for convenience and efficiency (also less clutter, which should not be underestimated).
Good article on this: https://www.nngroup.com/articles/ui-accelerators/
Just to clarify, there are indeed also some places in iOS where it’s maybe less ideal, but my point is that there is a place for undiscoverable features.
They have tried and failed to get it back and now seem to have given up on competing and just bought the competition instead.
It's also not just UI. Figma is a very capable vector and general purpose graphic tool. Figma made a lot of common things much easier than they are in Illustrator and Photoshop. While being online and fully collaborative. It's really an amazing tool and imo Adobe was rightfully threatened by it as I don't believe they could deliver anything close. It would just continue taking over more use cases.
Standing at a standing desk also works great for me. I am also really productive in trains for some reason, even though the position is less then ideal.
Outside areas can also be great if you can make sure you can see your screen and are out of the direct sun.
The m2 air does also look nice, but I haven't felt the need to upgrade.
Still quite compact and a nice device.