David Martinez

37 posts

David Martinez banner
David Martinez

David Martinez

@david_software

Crafting code and chasing Agile dreams - because life's too short to waterfail! 💻🚀

Ireland Joined Ocak 2023
55 Following3 Followers
codecholeric
codecholeric@codecholeric·
@david_software @simas_ch @archtests @structure101 Honestly, I'm not convinced of this. A first class citizen like JPMS, yes. But I'm not convinced to couple build tool and architecture. I've worked in a project for quite a while that followed this approach and had over 700 Maven modules. Just building the reactor took over a min
English
2
0
1
28
Simon Martinelli
Simon Martinelli@simas_ch·
I hate multi-module Maven projects
English
34
5
187
32K
Dave Farley
Dave Farley@davefarley77·
What's something you've realised about your work recently that you should've known a long time ago? 🤨
English
39
0
10
12.4K
David Martinez
David Martinez@david_software·
The contemporary testing approach simplifies the pyramid: Base level: Focus on Business Functionality Tests to ensure core features work as expected. Mock the external. Top level: Implement Integration Testing for smooth connections with external systems. #SoftwareTesting
English
0
0
0
12
David Martinez
David Martinez@david_software·
@housecor Although I appreciate that code reviews can be a good way to start conversations. What about ship/show/ask?
English
1
0
0
27
David Martinez
David Martinez@david_software·
@housecor I think there are better ways to collaborate than code reviews. User acceptance tests should be changed by "iterate and listen to your users' feedback".
English
1
0
0
439
Cory House
Cory House@housecor·
Some things that can’t be fully tested via automation. ✅ Is the code readable? ✅ Are there reuse opportunities? ✅ How’s the user experience? ✅ Is the app accessible? ✅ Does the design match the requirements? ✅ Are automated tests readable and comprehensive? ✅ Is the code needlessly complex? This is why we do code reviews, manual QA, and user acceptance testing.
English
10
17
181
41.9K
David Martinez
David Martinez@david_software·
@bazlur_rahman Needing to test a class's private methods signals that there's a problem with your design. It usually means that the Single Responsibility Principle (SRP) has been compromised.
English
0
0
0
130
David Martinez
David Martinez@david_software·
@housecor This is a symptom of the Smart UI anti-pattern that Eric Evans talks about in the DDD blue book.
English
0
0
0
10
Cory House
Cory House@housecor·
Just reviewed a web page making 55 fetch calls totaling 570k of JSON. This one page is 1.6 MB. Why 55 calls? Because each database table is exposed as an endpoint. The UI joins all the JSON together via the provided foreign keys. To be clear: Don't do this.
English
363
372
6K
1.2M
David Martinez
David Martinez@david_software·
@S_Dietrich @bootify_io That's a good point. With boundary testing you can pragmatically achieve that. It's true tough that there's no 100% theorical assurance that you won't have any error. What I meant is that the focus should not be in code line coverage.
English
0
0
1
9
Sebastian Dietrich
Sebastian Dietrich@S_Dietrich·
@david_software @bootify_io 100% functional coverage does NOT make your application error-free. Unless you test your application with all possible inputs and combination, which you can't even if your application is just a trivial "int add (int x, int y);"
English
1
0
1
13
Thomas (Bootify.io)
Thomas (Bootify.io)@bootify_io·
Unpopular opinion: a 100% test coverage does not make your application error free.
English
3
0
5
535
David Martinez
David Martinez@david_software·
@PLyczkowski I do kind of the same. I specify the signature of the methods that I need in the "high level" algorithm and I implement the details later.
English
0
0
1
24
Paweł Łyczkowski
Paweł Łyczkowski@PLyczkowski·
A programming technique I find very helpful is using pseudo-code: write your dream high level code first as pseudo-code, then implement missing objects methods etc. #GodotEngine example of a thing you could write when setting up a turn based game architecture:
Paweł Łyczkowski tweet media
English
3
1
20
1.8K
David Martinez
David Martinez@david_software·
Having processes on a team by default is premature optimization.
English
0
0
0
19
David Martinez
David Martinez@david_software·
@srbaker @fosseng Exactly. Do not plan for it in advance, separate your things in bounded contexts. When the time to split it comes, you and the team will know. Let changes come naturally.
English
0
0
0
47
Steven R. Baker
Steven R. Baker@srbaker·
@fosseng Design your system well, and it will tell you. Most developers listen to what their ego is telling them, not what their software is telling them.
English
3
1
7
241
Steven R. Baker
Steven R. Baker@srbaker·
Wide use of micro-services isn't for productivity gains, system design, other good. It enables hiring n times as many devs to get the same amount of work done. Micro-services are great when applied where they're useful, but most orgs can't manage the overhead well, so net loss.
English
8
9
90
6.5K
David Martinez
David Martinez@david_software·
@bootify_io You'll have external dependencies that could fail as well, but there's not too much you can do about it. I care about my software, and what I'm responsible of, working. It's also beneficial to have 100% integration test coverage to ensure error-free code.
English
1
0
0
17
David Martinez
David Martinez@david_software·
@simas_ch @archtests @structure101 Multi-module Maven projects offer faster feedback for structural issues, especially when using an IDE with POM validation but also because it's the first thing checked when running the build. I like the high cohesion of having a dependency manager who also checks the issues.
English
1
0
3
156
David Martinez
David Martinez@david_software·
Remember, #DTOs are essential for efficient data exchange, but they should NEVER be mixed with your domain entities! Keep your data clean and separate for a maintainable and scalable codebase. 🚀🧹 #Programming #BestPractices
English
0
0
0
44
Abhinav
Abhinav@IamAbhiDev·
Hey Developers 👋, What's the most crucial part of programming? 👀
English
149
1
159
14.2K
David Martinez
David Martinez@david_software·
@DevWig DRY means "do not repeat knowledge", different to "do not repeat code". Not all duplicated code is duplicated knowledge.
English
0
0
2
22
Hunter Wiginton
Hunter Wiginton@hackastak·
So DRY is the root of all bad code?
English
54
2
62
19.4K