Mario Fusco Profile Banner
Mario Fusco Profile
Mario Fusco

@mariofusco

44,943
Followers
328
Following
2,835
Media
20,884
Statuses

Java Champion ~ Open source advocate ~ Frequent speaker ~ @jugmilano coordinator ~ Drools project lead at @RedHat ~ Pragmatic dreamer ~ Europeist

Milan, Italy
Joined May 2010
Don't wanna be here? Send us removal request.
Pinned Tweet
@mariofusco
Mario Fusco
7 years
Programming languages don't differ much in what they make possible, but in the kind of mistakes they make impossible
19
418
1K
@mariofusco
Mario Fusco
4 years
Here in Italy people started to share this figure claiming that this is the diagram of the 5G chip that has been inserted in the covid vaccine. In reality it is the electric circuit of a guitar pedal and I believe that putting it in the covid vaccine has been an excellent idea💡
Tweet media one
969
9K
26K
@mariofusco
Mario Fusco
4 years
When you replace your non-working code with something copied from StackOverflow
Tweet media one
68
2K
9K
@mariofusco
Mario Fusco
3 years
When I was young I was a very bad programmer. But after decades of gaining experiences at work and attempts to learn stuff the hard way, I'm finally no longer young.
Tweet media one
45
618
5K
@mariofusco
Mario Fusco
6 years
Waterfall vs. Agile vs. Reality
Tweet media one
37
3K
5K
@mariofusco
Mario Fusco
9 years
4yo: "dad, what are you writing?" me: "tests" 4yo: "why?" me: "to find and remove errors in my program" 4yo: "why did you put errors in it?"
79
4K
4K
@mariofusco
Mario Fusco
2 years
Blockchain exists since 15 years now. It is no longer possible to say that it is an immature technology and we're still experimenting with it. Show me a compelling use case for it or please let's finally admit that it is a waste of time, energy and money and move forward.
Tweet media one
209
445
4K
@mariofusco
Mario Fusco
7 years
I will never understand management
Tweet media one
16
1K
3K
@mariofusco
Mario Fusco
2 years
There's a simple O(1) algorithm to check if a number is prime that works in 95%+ cases. Of course this is a joke, but it also comes with an important lesson: when estimating the probability of something never forget to take count of the base rate
Tweet media one
36
439
3K
@mariofusco
Mario Fusco
8 years
Current status of Javascript development
Tweet media one
27
2K
2K
@mariofusco
Mario Fusco
6 years
Tweet media one
20
739
2K
@mariofusco
Mario Fusco
2 years
Unpopular opinion: this book is almost 30 years old and in all honesty didn't age very well. If you own a copy do yourself a favor: bury it deeply in your bookshelf and forget about it forever.
Tweet media one
183
169
2K
@mariofusco
Mario Fusco
3 years
State of the art of artificial intelligence
Tweet media one
9
550
2K
@mariofusco
Mario Fusco
9 months
The most important superpower of a developer is complaining about everybody else's code #vdt24
Tweet media one
19
186
1K
@mariofusco
Mario Fusco
5 years
Tweet media one
28
493
1K
@mariofusco
Mario Fusco
6 years
And they say: "I don't get why all developers have so unconventional sleep patterns"
Tweet media one
18
654
1K
@mariofusco
Mario Fusco
7 years
The Apple philosophy
Tweet media one
14
962
1K
@mariofusco
Mario Fusco
3 years
What #agile became vs. what it was (and should be)
Tweet media one
21
352
1K
@mariofusco
Mario Fusco
5 years
Developers' hell
Tweet media one
7
517
1K
@mariofusco
Mario Fusco
5 years
The 3 most dangerous humans in the world are a back-end developer designing a GUI, a front-end developer writing a SQL query and, as obvious consequence, anybody defining himself a full-stack developer.
Tweet media one
34
435
1K
@mariofusco
Mario Fusco
5 years
If the world was created by a programmer...
Tweet media one
11
534
1K
@mariofusco
Mario Fusco
4 years
It seems that, due to travel restrictions imposed by the covid situation, this year US has been obliged to organise a coup at home.
Tweet media one
Tweet media two
Tweet media three
Tweet media four
14
386
1K
@mariofusco
Mario Fusco
1 year
Finally a fashion style I can understand!
Tweet media one
13
150
962
@mariofusco
Mario Fusco
5 years
I graduated in Computer Science in late 90s When I studied DBs there was no Big Data When I studied Distributed Systems there was no Cloud When I studied AI there was no deep learning When I studied Networking there was no wifi Learn the fundamentals the rest will change anyway
Tweet media one
16
309
967
@mariofusco
Mario Fusco
4 years
The essence of smart software development
Tweet media one
16
240
957
@mariofusco
Mario Fusco
5 years
Programming explained with music
Tweet media one
25
446
902
@mariofusco
Mario Fusco
1 year
In my opinion the general availability of virtual threads made 21 the most disruptive and innovative Java release since 8... ... and still people seem to focus on stuff like this 👇 Sometimes I really don't understand developers 🤷
Tweet media one
48
102
855
@mariofusco
Mario Fusco
10 years
Everybody loves Javascript, isn't it? http://t.co/CJYfmDY8eU
Tweet media one
30
1K
853
@mariofusco
Mario Fusco
5 years
Getters and setters Javadocs
Tweet media one
7
234
838
@mariofusco
Mario Fusco
8 years
"We tested each and every setter and getter, what can go wrong with integration?"
Tweet media one
16
797
829
@mariofusco
Mario Fusco
5 years
Developer: I'd need a couple of weeks to refactor the big mess we have and fill our technical debt before we move forward Manager: that's impossible I can give you no more than 1 or 2 days, otherwise we will miss the next deadline Developer: ok, done
Tweet media one
13
317
803
@mariofusco
Mario Fusco
2 years
At the moment I cannot imagine a more misleading IT buzzword than #serverless
Tweet media one
24
128
795
@mariofusco
Mario Fusco
10 years
Imperative vs. Functional - Separation of Concerns http://t.co/G2cC6iBkDJ
Tweet media one
27
839
758
@mariofusco
Mario Fusco
7 years
Current status of Java 9 adoption
Tweet media one
19
358
742
@mariofusco
Mario Fusco
8 years
Software versioning schemes
Tweet media one
7
726
725
@mariofusco
Mario Fusco
3 years
Tweet media one
31
164
726
@mariofusco
Mario Fusco
6 months
Java rocks More than ever
Tweet media one
30
93
722
@mariofusco
Mario Fusco
5 years
You can optimise for low latency. You can optimise for high throughput. You can optimise for memory occupation. However 90% of times the most precious thing you should optimise for is maintainability.
Tweet media one
11
319
709
@mariofusco
Mario Fusco
2 years
"You should really rewrite this legacy Java code in Kotlin/Rust/Scala/Brainfuck/..."
Tweet media one
22
137
695
@mariofusco
Mario Fusco
10 years
The world seen by an object-oriented programmer http://t.co/5Gp7YueFWc
Tweet media one
37
1K
681
@mariofusco
Mario Fusco
4 years
It works!
Tweet media one
12
111
672
@mariofusco
Mario Fusco
6 years
Best Venn diagram of the year
Tweet media one
6
309
647
@mariofusco
Mario Fusco
2 years
Unpopular opinion: ALL software development methodologies have been invented by people who, not having a clue on how software is developed in the real world, decided to make money telling to the ones who actually do the job how to do it.
Tweet media one
Tweet media two
Tweet media three
Tweet media four
42
116
632
@mariofusco
Mario Fusco
9 years
Optional Type System
12
670
612
@mariofusco
Mario Fusco
4 years
Trying to make your Java code faster by "helping" the JIT compiler without knowing how it actually works
Tweet media one
7
108
628
@mariofusco
Mario Fusco
8 years
IT jobs explained with a broken lightbulb
Tweet media one
0
612
607
@mariofusco
Mario Fusco
5 years
"Was it that simple? It took you 2 minutes to find the solution and you just googled it" "Not that simple. It took me 20 years to learn the right thing to google"
3
155
616
@mariofusco
Mario Fusco
5 years
Monday morning...
Tweet media one
7
186
607
@mariofusco
Mario Fusco
5 years
Applying the KISS principle also implies doing "boring" stuff instead of blindly following the coolest trends of the moment. Do monoliths unless you don't need microservices for a good reason. Use synchronous code unless you don't need async or reactive for a good reason.
Tweet media one
17
261
611
@mariofusco
Mario Fusco
8 months
I'm seriously considering adding this to all the open source projects to which I contribute.
Tweet media one
132
53
541
@mariofusco
Mario Fusco
7 years
Wastes of sw devel 1.Solving the wrong problem 2.Reinventing the wheel 3.Unnecessary optimization 4.Emotional attachment to code 5.Meetings
13
518
583
@mariofusco
Mario Fusco
3 years
Is there any other industry like open source software, where free users behave and have demands and expectations as if they were paying customers, also making money out of someone else's work, without giving absolutely anything in exchange?
Tweet media one
30
113
586
@mariofusco
Mario Fusco
2 years
Honest question: if you could magically add a type system to a significant code base written with a dynamic programming language, how many bug will you uncover?
Tweet media one
40
91
584
@mariofusco
Mario Fusco
1 year
Your friendly reminder that a prototype is a throw away experiment, a proof of concept intended to demonstrate the feasibility of an idea, not something that is meant to be evolved till reaching production.
Tweet media one
14
149
585
@mariofusco
Mario Fusco
1 year
#Lombok is the perfect demonstration that the simple fact that is technically possible to do something neither implies that is a good idea nor represents a good enough reason to actually do it.
Tweet media one
89
95
584
@mariofusco
Mario Fusco
2 years
This is the book I was waiting for!
Tweet media one
15
150
577
@mariofusco
Mario Fusco
5 years
Tips for #Java API - Choose method names carefully - Add convenience method sparingly - Avoid long arguments lists (esp same type args) - For args types favor interfaces over classes - Use overloading judiciously - Return empty Collections or Optionals, not nulls - Write javadocs
Tweet media one
19
221
556
@mariofusco
Mario Fusco
8 years
Latency numbers every programmer should know
Tweet media one
10
371
538
@mariofusco
Mario Fusco
6 years
Current status
Tweet media one
4
206
542
@mariofusco
Mario Fusco
6 years
Dear @IBM let's make a deal: - leave my code open - don't tread on my @RedHat culture and most important - don't try to turn this 60 hrs/week enthusiast developer into a sad 40 hrs/week badge user and spreadsheet filler and we will be friends for long long time
11
122
543
@mariofusco
Mario Fusco
5 years
Applying project management theories to classical music
Tweet media one
15
215
526
@mariofusco
Mario Fusco
5 years
A clear symptom that your software is overengineered is that writing a simple test requires 200 lines of mocks and 3 lines of logic. And then you're unsure if your test actually verified anything or just injected the result. If your unit tests look like this take a step back.
Tweet media one
23
205
528
@mariofusco
Mario Fusco
2 months
I'm tired of seeing this book constantly listed among the books that every sw dev must read. To me it's made 90% of utterly trivial advices and 10% of blatant mistakes (best functions have 0 args 🤦). Evidently I'm missing something. If you liked this book can you explain why?
Tweet media one
206
36
525
@mariofusco
Mario Fusco
4 years
This is a game that I could endorse
Tweet media one
11
89
510
@mariofusco
Mario Fusco
5 months
The pain of maintaining an open source project 😢
Tweet media one
8
131
516
@mariofusco
Mario Fusco
1 year
Tell me one reason, one single reason, why you are not running your Java code on the latest available JDK. Tell me one reason, one single reason, why you are not upgrading your JDK version IN PRODUCTION every 6 months.
Tweet media one
187
60
504
@mariofusco
Mario Fusco
6 years
Customer: "do you think we should use solution A or B?" Me: "I STRONGLY suggest A for reasons x, y and z" Customer: "ok, thanks a lot" ... a few weeks/months later ... Customer: "we decided to go with B, but surprisingly is not working, can you help us with it?" #mylife
18
138
505
@mariofusco
Mario Fusco
5 years
If you're wondering why everybody loves Italy (and if you don't you should), I'll show you with one picture.
Tweet media one
3
104
498
@mariofusco
Mario Fusco
6 years
I'm not a so good developer, but I did a smart move in my career and I keep doing it every time is possible: I always try to surround myself with people better than me. This tweet is to thank my old and new colleagues from whom I learned a lot and I keep learning every day.
Tweet media one
2
150
496
@mariofusco
Mario Fusco
3 years
Which kind of bug fixer are you?
Tweet media one
28
126
489
@mariofusco
Mario Fusco
8 years
In Java everything is a object In Clojure everything is a list In Haskell everything is a function In Javascript everything is a bad mistake
18
400
483
@mariofusco
Mario Fusco
2 years
Lambdas are glue code, two lines may be too many. Avoid multiline lambda. @venkat_s at #jfokus
Tweet media one
32
58
487
@mariofusco
Mario Fusco
2 years
Untestable code is actually badly designed and written code. @venkat_s at #jfokus
Tweet media one
19
116
481
@mariofusco
Mario Fusco
6 years
"Let's do this in a feature branch" they said, "we will merge it later into master"
Tweet media one
11
233
477
@mariofusco
Mario Fusco
7 years
Things you should NOT do when reporting a bug: 1. Using a stack trace as only issue description, without any clue of how to reproduce it 2. Saying how urgent your problem is and that the human civilization as we know it will be destroyed if it won't be solved in next 30 minutes
Tweet media one
10
327
470
@mariofusco
Mario Fusco
6 years
I'm hoping this could be useful for some friends and colleagues (thanks to @porcelli )
Tweet media one
6
269
470
@mariofusco
Mario Fusco
6 years
Functions are like humans, cute when small, annoying when they get bigger
Tweet media one
4
182
466
@mariofusco
Mario Fusco
7 months
Today is one of those days 🙄
Tweet media one
16
46
467
@mariofusco
Mario Fusco
4 years
Current status
Tweet media one
3
84
465
@mariofusco
Mario Fusco
6 years
"one week ago you said that you needed 2 days to implement that feature" "true, but it was harder than I expected, I need a bit more time" "ok, how much?" "2 days will be enough" #estimation
Tweet media one
6
255
463
@mariofusco
Mario Fusco
1 year
Successful software teams are made of (a small number of) individuals who: - are passionate - are committed - take responsibilities - share knowledge - aren't afraid of making mistakes - recognize others' merits All methodologies are poor replacements for lack of these skills.
Tweet media one
5
115
463
@mariofusco
Mario Fusco
1 year
The increasing amount of YAML written every day is directly proportional to and the major symptom of the decline of software engineering.
Tweet media one
16
65
454
@mariofusco
Mario Fusco
7 years
Rubies are red, Some threads are green, But only Java has AbstractSingletonProxyFactoryBean
5
258
455
@mariofusco
Mario Fusco
1 year
Best deadlock explanation ever 😉
Tweet media one
6
61
449
@mariofusco
Mario Fusco
6 years
I was wondering why Italian politics are so against journalists and then this guy made me see the reason clearly
Tweet media one
3
188
438
@mariofusco
Mario Fusco
5 years
Choosing an OS
Tweet media one
13
124
443
@mariofusco
Mario Fusco
1 year
Software development explained with cars
Tweet media one
3
120
441
@mariofusco
Mario Fusco
6 years
I finished in 4 days something that I estimated to take 4 weeks. Either I am a great developer or I suck at estimations. ... Or estimations are totally useless.
31
122
438
@mariofusco
Mario Fusco
3 years
A poor Java developer between a Kotlin fan and a Scala one
7
75
436
@mariofusco
Mario Fusco
11 months
Scientists create Typescript, a fake type system built on top of the worst possible dynamic language, that could be an alternative to a properly statically typed language 🤔
Tweet media one
13
52
437
@mariofusco
Mario Fusco
7 years
As a software developer, I want to throw away user stories and all other Agile bullshits so that I'll have time to get some work done
21
189
429
@mariofusco
Mario Fusco
8 years
In software design and development almost everything is possible, but only a small fraction of what is possible is also appropriate
Tweet media one
4
421
428
@mariofusco
Mario Fusco
8 years
Best known machine learning algorithms segregated by their application intent
Tweet media one
0
181
429
@mariofusco
Mario Fusco
2 years
Javascript doesn't make any sense, today's edition 👇
Tweet media one
33
62
431
@mariofusco
Mario Fusco
3 years
Test passed, ship it!
Tweet media one
7
64
429
@mariofusco
Mario Fusco
2 years
I always disliked Lombok, but now I really don't see why keeping using it at all. Tell me one single valid reason why you should use it with modern Java.
118
46
420
@mariofusco
Mario Fusco
8 years
9 devs' lies 1 Tested 2 Fixed 3 Not a bug 4 Thread-safe 5 Done in 2 days 6 User's fault 7 It scales 8 Self-documenting 9 I got requirements
9
514
409
@mariofusco
Mario Fusco
5 years
Stackoverflow nowadays.
Tweet media one
11
101
414
@mariofusco
Mario Fusco
5 years
Tweet media one
1
211
393