#Flutter
💙
#dotnet
| Agitator for improvement | Hire me for apps or routine maintenance: widget testing, CICD, package upgrades, code quality, doco, solutions
Absolutely stoked to be working on my first
#Flutterdev
freelance project for a while! Hope to go back to it full time
If you have any routine maintenance like upgrading packages, adding widget tests, refactoring or general code quality, HMU! I can make a big difference quickly.
I'm currently developing software outside the software industry.
No Scrum. No JIRA. No meetings. No sprints. No microservices. No Clean Architecture. No DDD, TDD or other acronyms. I just build the software.
I don't wanna jinx it, but this is therapy for me.
Smart people often write the worst code because they're more comfortable with complexity and have larger working memory. I've encountered this so many times in my career
Don't write ✍️ code for the smart people. Assume the person looking at it cannot fit complexity in their head
Can we finally admit that the
#microservices
craze was harmful to the software industry?
Sure, they are good in theory, but most teams end up with unmaintainable, slow, unreliable, hard-to-change monstrosities
We now use "modular monolith" as consolation, but I still say back-end
Node is just 🤬
I understand why you need to transpile to JavaScript in the browser, but why would anyone inflict this hell upon themselves for the backend or a mobile app?
A while back, I worked with an SQL server database with several tables that had over a trillion records each, and it ran fine.
Please, tell me again why it's necessary to split your database with a few hundred thousand records into
#microservice
dbs
WTF Lex Fridman...
This guy talks with a lot of intelligent people, but this demonstrates a lack of understanding. LLMs do not offer any evidence that we are closer to creating sentience at all. Actually, they just prove how little we understand about sentience
@satnam6502
I wonder if we could all somehow use our collective bargaining power to boycott modern software development processes
Problem is modern processes are all some people know. They never had the experience of just turning up to work, putting headphones on and building uninterrupted
This might sound like stage but I'm astonished at how little juniors use ChatGPT to write code. It's literally the first thing I do when I get stuck. I barely use Google anymore. What is the point of grinding away when ChatGPT can unblock you like 90% of the time?
@SteveStuWill
I haven't read this but I bet I can explain why...
The more intelligent you are, the more complexity inherent in the problem you see
Bosses always say "can't you just ..."
Yes, but we can, but about a thousand things could go wrong
I'm calling it.
#ReactNative
is a damn nightmare!
Just to build a basic app, you're dealing with Babel, Metro, npm, yarn, probably expo and a whole bunch of other things, not to mention the OS level dependencies
Stick to
#Flutterdev
!
@farazamiruddin
This drives me nuts. I've worked on software for over 20 years and I've never had to write any algorithm more complicated than a bubble sort. It's simply not what developers do and if I found someone in my team writing an algorithm, I'd ask them why they're reinventing the wheel
Mobile development is 10x harder than backend dev. I do both and backend dev is nothing. You're developing for the iPhone one minute, then the next minute Apple deletes the iPhone simulator from your computer. I literally can't work now.
@python_deck
Absolutely
It's sad how many people will never experience the pure joy of just building a system without someone standing over your shoulder shouting at you to do all the things that make the software industry a horrible place to work.
In 2024, can we please banish the title of "Product Owner" ?
It implies that the rest of the team have no ownership of the product, and it's completely incommensurate with the concept of a flat hierarchy
It's offensive in so many ways
Who else thinks the Agile Manifesto is a deliberately vague document that offers almost no clarity on how teams should organize themselves, and only exists so that grifters can build "frameworks", talk at conferences, and sell merch?
Mobile app Dev is really a suckers game
Everyone knows you can't do shit inside a web browser
But if anyone builds an app, they want audio, video, GPS, notifications, every form factor, phone rotation, gestures , contacts, phone calls, Android, iOS, tablets....
It never ends!
I always start my projects with UI first. I fake the services and get it working. What the backend requires becomes obvious so I build it. Then, I connect the dots by adding services to actually make the API calls. Is that how you do it?
People joke all the time about killedbygoogle, but did you know there's a killedbymicrosoft? My career got messed up several times by these
News flash 📸
Big companies kill products that cost them too much money to maintain 💰
Pull requests are not the problem. The problem is how most teams manage pull requests. There is basically no substitute for feature branches unless your team is willing to work in a synchronous way.
To make PRs work for your team, do this:
✅ Small PRs. If your branch is too
I know what so many people are thinking
You can't just leave developers alone to do the work
Doesn't scale up
They can't talk to stake holders
Yada yada yada
It's BS. That's what we used to do, and I don't understand why we're supposed to need all these people directing us
Dependency injection gets abused too much in
#dotnet
. It's there to allow you to inject some concrete instances into classes that might have a few different interface implementations
Instead, it's used to configure everything from validation, mapping, to options
🚫 Avoid extra layering in apps upfront
Clean Architecture adds complexity and requires mapping 🔄. This affects performance and maintainability 📉
⌛ Extra layers = longer development, testing & debugging 🔧, plus a steeper learning curve 🎓 that can slow your team down
🎯
#Microservices
are inevitable at some large orgs. They get to a point where they can't add functionality to their monolith so every new piece of functionality is a microservice.
The problem is that adding services becomes so reflexive that they add services just to do things
You'd be amazed at how better your code is when you reserve abstractions for when they're needed.
Don't try to preempt the complexity. You'll just end up piling complexity on top of complexity.
Open source doesn't work. 1.1 million downloads of
#dotnet
packages and barely any meaningful PRs for these packages. Nobody ever helped out by writing a single unit test. Hardly any feedback. This doesn't even mention the flutter packages.
I just finished upgrading 43k LOC of C# code from
#dotnet
Framework 4.0 to .NET 8. It took me 7 days.
This was extremely therapeutic for me. I just love connecting the dots and watching the red disappear.
Still have Roslyn auto fix therapy left to enjoy 😀
No idea why Python is a popular language
JavaScript is right there. If you have a computer, JavaScript is good to go
Installing Python is a damn nightmare. Every time I try to install it, it burns hours. How does this not turn noobs off? 🤷🏼
Most good software is just somebody's side project until it starts making money, a company buys it, and the whole thing gets Scrumified and you're just cutting JIRA tickets
So I'm writing an ebook on why you should write less unit tests and cover more of your code with integration tests. Yell at me about that for a bit so I can take some notes to address in the book.
Me: I have over 30
#dotnet
and
#flutter
OSS projects and apps in public that demonstrate my skill and versatility. I also have a blog that demonstrates my writing ability and depth of knowledge
Hirer: do this coding assignment while I grill you with stock interview questions
🤬
Do you ever stop to think about how and why ideas like
#TDD
#DDD
#SOLID
,
#Microservices
and so on got so heavily marketed? Do you ever think about the industry around these ideas, and the revenue that people earn from books, training, consulting and even influencing?
SOLID treats every component in your app like an independent reusable component. It forces you to treat each element with an extreme level of abstraction and decoupling.
Just remember, you’re building an app, not thousands of independent libraries. You don’t need to go that far
Wait, what?
What aspect of
#ChatGPT
was actually open sourced here? It's saying we can run it on our own network?
Does it have any of the training data?
CTO: All the
#OSS
frameworks are 60% finished
Options:
a) Pay OSS person a few grand to finish a framework
b) Hire contractor @ $100k + to build a proprietary framework from scratch
CTO: Well, looks like we have no choice but to free up $100k of budget.
Every. Single. Time.
I'm starting my first full time
#flutter
job on Monday. It's the first job I've had where I'm not doing
#dotnet
. I'm pretty stoked. I will keep up .net with my
#OSS
repos
Just woke up to watch my follower count tick over to 10k thanks to this off the cuff tweet, and after ditching the blue check 🎉
I truly know you're all fed up with the industry now, so let's work together to remove all the bullshit and get back to building great software
Staying at a job for 11 years was the worst mistake I ever made. I thought hirers would care about what I achieved there but they don't, and there was no way to show anyone because the code is proprietary
Always prefer jobs where you can show your work in public
For people who don't debug:
HTF, does that even work?
You literally just run the code and hope it does what you expect?
Like, you don't step through line by line to check it's not doing something crazy? 😳
Why is tech Twitter obsessed with this Sama thing?
Y'all work in tech right?
Since when is the CEO this important?
It's just a cult following. He's not the heart of ChatGPT - the engineers are
I'd be more worried if their core engineers and researchers got fired
Need caching in
#flutter
? It's easy, and you don't need any external libraries or packages. There is a great cache built into the framework, and you're always better off using the core tooling than dragging in extra dependencies
🎉 Exciting news for all
#FlutterDevs
!
Just published a comprehensive guide that's all about mastering Material Design 3 Theming in Flutter! 🚀
Dive deep into the world of custom themes with ThemeData, and explore the vibrant versatility of defining color palettes with
Oh man, being able to spin up an
#SQLServer
instance on Docker on Mac, and then being able to instantly hit the database with the SQL Server VS Code extension is a game changer.
No wrestling with installation or SQL Server Management Studio
Wow, I have lost track of all the threads and comments here so sorry if I don't get around to reading them all.
When I went to sleep, this had around 100k views and now it's almost 700k with 10k+ likes.
Absolute proof of fatigue from the software industry BS.
I'm currently developing software outside the software industry.
No Scrum. No JIRA. No meetings. No sprints. No microservices. No Clean Architecture. No DDD, TDD or other acronyms. I just build the software.
I don't wanna jinx it, but this is therapy for me.
This is your daily reminder that unit testing makes your code harder to refactor and grinding on unit tests every day will never bring your codebase up to a high level of test coverage 😱
I'm in a position where I can build any app I want, but I know that most apps will just get ignored unless I market like crazy, but even if I do, there is no guarantee monetization will be successful. So how do I know what to invest time into?
If you're a
#flutter
developer and you don't build widget/integration tests for your client, you are doing them a huge disservice and kicking the can down the road.
Since I started reviewing Flutter apps, I've found that hardly anyone builds tests and even if they exist, they're
Hybrid work is the worst of both worlds 🌍
You're still tied to a geographic location, and it still costs the employer a heap of money to maintain the office space 💰
It's depressing to see the rush to force everyone into hybrid 🏃♀️
Really stoked to see the
@flutterbyteconf
happening in Nigeria. It's very clear that Africa is a hub for Flutter talent and I'm so happy that we're all on this journey together. Tech isn't limited to the USA and Europe anymore. Everyone around the world can participate.
@serejahh
Nobody will ever argue that getting a cross platform app to work smoothly is easier than doing the same thing on native. But if you've ever tried to create two native apps that look the same and then maintain them both, you'll never argue that it requires less resources
Can totally vouch for this. I messaged a guy in Nigeria after seeing his cool project on LinkedIn. We did some work together. That project never finished, but I hired him when I was leading up a team working with Flutter and now he's making good money. Just from
#buildinpublic
🚫 I don't use Riverpod or Bloc
I think they're both bloated approaches and I don't really see much benefit in using either 🤷♂️
If you're in the same boat 🚣♀️, what do you use instead? 🔄
#flutterdev
This tweet helped me breathe a sigh of relief that I'm not the only one who thinks this way
Time for devs to start clawing our autonomy back
Not talking about switching to an industry where programmers run everything
We want an industry that respects the craft of development
When I look at ASP .NET Core WebAPIs, I have to wonder why it got tangled up with MVC in the first place. MVC is a UI pattern. How did it leak over into APIs?
Unpopular opinion: making your own food is not worth the time
If people work overtime, we get upset that they're not using that time for themselves or their families
But it's perfectly ok to waste hours cooking and cleaning?
Good app architecture means the structure is easy to understand and maintain, good performance, code is easy to test and there is consistency. It has very little to do with how strictly the code follows some given pattern or patterns
@eshita
@angel_d_munoz
Not to mention horrible for the environment, limiting for many people, a waste of time, distorts the price of real-estate, encourages viral transmission like the cold and flue, massive business expenses, but most of all restricts access to talent outside the geographic location
Another reason why I can't stand the modern approach to software development. Most companies block developers from directly reading customer support correspondence.
Why?
It's not the developer's job. That's the PO's job
The best founders I know — no matter their company’s scale — thrive on doing customer support directly. There’s literally no better way to understand the pulse of your customer base, what features to build next, or where systems are breaking down. It’s always upside.
I strongly believe in writing docs. At the same time, I also believe in efficiency. I'm not going to write something if I don't think people will read it. I can't count the number of times I've written something, only to be asked "Can we get a walkthrough of this?"
Advice?
With absolutely no personal experience whatsoever, my random guess for 2023 is that
#golang
will probably emerge as the go-to language for WebAPIs. It's a clean language without years of bloat, and it is extremely fast. I'm going to dabble with it. Will you?
Why I prefer top level functions over methods...
Tying a method to the state of a class makes it harder to break it out later
Pure functions are usually more portable. They don't get stuck in one place like methods
@tPl0ch
@luke_pighetti
The irony of Scrum - even though it actually does encourage an iterative approach in the guide - is that it has wiped the iterative approach off the radar. It's now fortnightly waterfall.
I don't understand what motivates people to bang on about DRY being bad. Sure, there are times when you need to duplicate something, but it should be careful and considered, and it would be a nightmare if juniors didn't at least try to avoid duplicate code.
@marcoalfazo
@satnam6502
Oh no, I have strict processes that I enforce on myself
I just don't do the pointless stuff that doesn't contribute to making a better product
There is only one thing you need to become a great programmer: a burning desire to learn and improve
If you have this, and you follow it where it leads you, you will be unstoppable
Is it just me or is Domain Driven Design (DDD) the one unassailable habit that almost everybody loves, and nobody criticizes?
It's more or less responsible for microservices and other overcomplicated approaches, but people don't seem to question the wisdom
Realistically, can you get away with a Mac for
#dotnet
dev?
I do like Rider and it seems Microsoft is making strides to make .net usable with vscode, but I've always ended up using Visual Studio in windows for some reason or another
Also, no parallels
Where are we at now?
Before people get all bent out of shape about Moq... Let's take a few things into consideration.
Firstly, you probably ain't paying for the libraries you use. Are you even asking your employer to contribute?
Secondly, handing over data is the price you pay for getting free
@gonza_nardini
Anyone who gets the opportunity to strip all the bullshit out of software development - whether by themselves, or with one or two other good devs knows that this is the way to do it. Always has been.