Search
726 results for “tdd_fellow”
-
🧠 Struggling with complex input scenarios? Use the 'Triangulation' technique to test one variable at a time. Say goodbye to missed and over-tested scenarios. #TestingStrategies #TDD
-
Preemptive design specialization often leads to more issues down the line. Stick to what you know you need. #SoftwareEngineering #SimplicityIsKey #10xSoftwareDelivery
-
Why wait for a formal code review when you can do an ad-hoc session? If you spot an issue or improvement in code, invite the responsible team member for a quick, on-the-spot review. 🖥️ #CodeReviews #EngineeringTips
-
Questioning the business value of a task is not just about rejecting wasteful work. It's also an educational exercise that increases the team's understanding of the business, customer, and product. 📚 #TeamEducation #BusinessValue
-
Continuous refactoring is a trainable muscle. Do it hundreds of times per day, and you'll be ready to tackle massive architectural changes with almost zero risks. It's not just a practice; it's a skill set. #ContinuousRefactoring #SoftwareDevelopment
-
Think a task list is overkill for small tasks? Maybe. But when tackling large, complex problems, it's your best friend. It'll keep you aligned and laser-focused. 🎯 #ComplexTasks #EngineeringChallenges
-
Reach and Endurance: Understand the boundaries of a problem—how much it 'reaches' into other aspects of your life and how long it will 'endure.' It'll help you strategize solutions more effectively. #EngineeringChallenges #DecisionMaking
-
💡 Inaction is costlier than wrong action. If you're still contemplating, you've already lost valuable time. Embrace uncertainty and act, you can always pivot. #TimeIsMoney #CourageToAct
-
Integrity isn't just about keeping promises; it's also about refusing work that doesn't align with your ethics. Your values are your moral compass in a world of complex decisions. Stick to them. 🧭 #Integrity #EthicalSoftware #10xEngineering
-
Questioning the business value of a task is not just about rejecting wasteful work. It's also an educational exercise that increases the team's understanding of the business, customer, and product. 📚 #TeamEducation #BusinessValue
-
Why wait for a formal code review when you can do an ad-hoc session? If you spot an issue or improvement in code, invite the responsible team member for a quick, on-the-spot review. 🖥️ #CodeReviews #EngineeringTips
-
Preemptive design specialization often leads to more issues down the line. Stick to what you know you need. #SoftwareEngineering #SimplicityIsKey #10xSoftwareDelivery
-
In software delivery, it's not just about getting the work done; it's about how you get it done. Smaller batches, bigger results. #10xSoftwareDelivery #Agile
-
Neglecting integrity in software delivery can lead to harmful outcomes. From dark UI patterns to unethical business practices - we must remain vigilant. #EthicalSoftware #IntegrityFirst #10xEngineering
-
I’m happy to announce my workshop, ‘𝐖𝐞𝐥𝐥-𝐁𝐚𝐥𝐚𝐧𝐜𝐞𝐝 𝐓𝐞𝐬𝐭-𝐃𝐫𝐢𝐯𝐞𝐧 𝐃𝐞𝐯𝐞𝐥𝐨𝐩𝐦𝐞𝐧𝐭’ on 21 𝐚𝐧𝐝 22 𝐌𝐚𝐲 2025 at 𝐓𝐡𝐞 𝐁𝐫𝐚𝐢𝐧 𝐄𝐦𝐛𝐚𝐬𝐬𝐲 𝐢𝐧 𝐀𝐧𝐭𝐰𝐞𝐫𝐩. This two-day, hands-on workshop blends theory with practice in a real-world codebase. You'll be collaborating together with fellow attendees to master the art of writing loosely coupled and highly maintainable automated developer tests.
(1/2)
-
It was a successful weekend for #Komunumo, the new federated meetup alternative: Now there is a header on every page, and on the homepage the communities are displayed with their picture in a responsive grid. Architecture tests with #ArchUnit were introduced and thanks to #TDD we have a test coverage of 100%. This gives us a good feeling for refactorings and also when testing PRs. I'm already looking forward to spending a few evenings working on it next week! Screenshots will follow soon! 🤓
-
Has anyone used the #PersonalSoftwareProcess (a.k.a. #PSP)?
How did you learn it? I am trying to learn by myself, but the learning process highly recommends taking classes with a coach/trainer. Is it really worth it?
I have also found that the exercises are aimed towards a #waterfall approach, so have you used it with a highly #iterative / #agile approach like #tdd?
As a reference, I'm following the #psp for the 21st century (https://softwareexcellencealliance.org/psp-for-the-21st-century/) but there are also materials for the whole thing:
* PSP for Engineers - https://softwareexcellencealliance.org/psp-for-engineers-version-4-course/
* PSP Fundamentals - https://softwareexcellencealliance.org/psp-fundamentals-and-advanced/(It's also difficult to understand which one to select. There are overlaps in both versions)
I read the book from W. S. Humphrey but I found it somewhat difficult to follow after the first few chapters.
Call to all #developers #coders #programmers #devs
#SoftwareEngineering #SoftwareDevelopment #software #Development #personal #process #CMMI
-
Contents
What is Laravel?
Laravel is a web application framework with expressive, elegant syntax. We’ve already laid the foundation — freeing you to create without sweating the small things. – laravel.com
Laravel is a web framework built with PHP and gives you the tools you need to create a website.
Why Choose Laravel?
Laravel makes PHP development an absolute joy. PHP also gives you so many options since there’s plenty of other frameworks around such as Symfony, Slim, Cake and many more. Laravel has clear, concise documentation and answers most of your worries.
It covers a broad range of issues which you might come across when developing in any language, but they don’t all come bundled together. Laravel is very well pieced together, and Taylor has managed to keep the core compact while allowing you to expand on the framework through Composer packages.
Laravel’s packages are very easy to install and have plenty of documentation to cover them as well. If you can’t find your answer then Laravel has an absolutely fantastic community who are always helpful and love to help newcomers.
Routing
Routing is one of Laravel’s core concepts and allows you to set out your app’s structure. Firstly, you have web.php where you can place all your web requests, this is where you’ll find frontend and form request/responses. Secondly, their api.php which is where you’ll place any API requests. Representational state transfer aka REST is the most popular architectural choice for creating APIs which we’ll learn more about in the future.
For the first section of our course, we’ll be using web requests/responses and later move over to JSON API requests/response where it will all become clear.
From the above code, you can see a web route in its simplest form. Firstly, we’re creating a get request so when someone visits example.com/ they’re asking to get the information for the page, they’ll then see the text “Hello World” which is being returned from our closure function.
There any many other route methods which help us deal with web and API requests. These include the following…
Route::get($uri, $callback);Route::post($uri, $callback);Route::put($uri, $callback);Route::patch($uri, $callback);Route::delete($uri, $callback);Route::options($uri, $callback);List of all route form method
A lot of our requests will be more complex and we’ll want to separate the logic from our routes file. This can be done through controllers, if we wanted to move the above code from closure to a controller we will need to create our first controller.
Head over to app/Http/Controllers and create a file called HelloWorldController.php then add the following code.
And we’ll edit our web.php as follows
As you can see, we’ve removed our closure and swapped it out for the HelloWorldController and pointed it to the index method. The method then returns the same ‘Hello World’ as before, but now the logic has been separated. As your code becomes more complex, it makes sense to separate logic from one another.
Blade Templating
This brings us over to Blade templating which is a template language for our frontend code. Blade templates are just as expressive as the rest of the Laravel framework and make frontend development a joy.
Hello, {{ $name }}
Blade templating in it’s simplest formFor our next example, we’ll create a new dynamic route. It’s dynamic because it will accept user input and output it as HTML.
Let’s start by updating our current route to accept user
In our index method of HelloWorldController.php let’s update to accept our name input and return the output.
public function index($name){ return 'Hello ' . $name;}
Now when you head to example.com/welcome/Michael you’ll see the text “Hello Michael”, but we still haven’t use Blade templating.
Let’s update our index method to return a blade template
public function index($name){ return view('welcome', ['name' => $name]);}
Head over to resources/views and open welcome.blade.php. You’ll see there’s already code in this file since it’s Laravel’s default. Go ahead and delete everything inside and add the code from below.
Hello {{ name }}
Now when you visit example.com/welcome/Michael you’ll see a similar result to before, but now we can add as much HTML code as we like and we can also add CSS and JavaScript to the mix as well. You can also create templates for specific pages much more.
Eloquent and the Query Builder
If you need to interact with a database, you can do this with Eloquent.
$user = new User();$user->username = 'awesome_user';$user->password = 'shh, this is a secret';$user->save();Creating a new user and saving details to the database
Or maybe you like to create your own database queries.
DB::insert('INSERT INTO users (username, password) VALUES ("awesome_user", "shh, this is a secret")');// or using the query builderDB::table('users')->insert([ 'username' => 'awesome_user', 'password' => 'shh, this is a secret']);Create raw queries or the query builder
As with any raw queries, you must always be careful with user input and the potential for SQL injection vulnerabilities.
$username = $request->input('username');$password = $request->input('password');// Not okay - NEVER DO THIS!!!DB::insert("INSERT INTO users (username, password) VALUES ($username, $password)");// Escaping user input - DO THIS!!!DB::insert('INSERT INTO users (username, password) VALUES ?, ?', [$username, $password]);Unsafe SQL queries compared to safe SQL queriesWhat are Tests?
Tests are apart of every programming language. PHPUnit is the most popular package for testing in PHP, but there is also Codeception, PEST, Dusk, Behat and many more.
There are also different types of tests, the most popular are:
- Unit testing tests a specific chunk of code.
- Behaviour-driven describes what a user should expect in a much more readable and business-friendly way.
- Frontend testing where you test how your site should behave in a web browser.
Laravel developers mostly use PHPUnit for backend unit testing and Dusk for frontend tests. We will be covering both and it will be up to you whether you want to carry these tests out within your projects, but it is highly recommended you do.
What is TDD?
TDD stands for Test Driven Development and it’s the practice of creating tests BEFORE you create anything else. The practice will look a little something like this…
Create a test for a specific task
Run the test
Test fails
The failed test will say why it failed
Write code for that error
Run test which may pass or fail
If the test fails, write more logicWhen the test eventually passes, you can move onto another test and repeat the process. It may seem pointless and it may seem tedious, but once you get the hang of it, you’ll see the benefits.
Why should I test my code?
Say your senior developer comes up to you and requests a change in logic. Your code has no tests and there are no specifications to how it should currently work. You try your hardest to understand the logic and you think you know what’s going on.
You try to implement the change and introduce new bugs into the code. You’re unaware of said bugs because there are currently no tests implemented and as far as you can tell, everything works as expected.
You create a Pull request and your senior tests your code. They find bugs which you weren’t aware of and ask you to fix them. You take a look, fix the bugs they found and create a new PR. He reviews it again and finds the bugs are fixed, but unfortunately, they find another bug. You fix that bug and cross your fingers everything works as expected.
With this new PR, your senior reviews the code and approves your work. It’s taken a couple of back and forths which could have been easily avoided if you had tests running.
Now we have the exact same situation, but with a test suite. After receiving the request, you look at the tests and run them to ensure everything is working in its current state (which it should be).
All tests come back green and you begin to update the tests for your new logic. Once you update the tests, you run them and make sure it should fail since nothing has been implemented yet. It comes back red and tells you why it failed. You write some code and the test fails again but gives you a reason.
You follow these steps until your logic is complete and all tests pass. You push your code and create a PR. An automated test suite picks up on your PR and runs its automated tests. Everything comes back green again and your senior gives it one last review to ensure it’s up to coding standards.
Everything looks good and your senior is happy to merge and eventually pushes it to production.
The second scenario had a lot less friction between you and the senior and they are now a lot happier with your work.
Closing thoughts
I hope this gave you more insight into the Laravel framework and the TDD methodology we will be using from now on in this course. This episode is open to the public, but if you want to see future posts for this course, you will need to sign up using the form below.
If you have any questions, then you can use the comments section below or hit me up on Twitter or Facebook.
#from-zero-to-hero #laravel #tutorial
https://michaelbrooks.co.uk/laravel-from-zero-to-hero-00-an-introduction-to-laravel/
-
Uso #ExtremeProgramming da quando facevo #debugging all'università, oltre 20 anni fa.
Una cosa non cambia: scrivere codice è facile, definirne tutto il comportamento no.
🎤 A #PyConIT 2026 porterò un #workshop su #Python 🐍 e #TDD:
dalle variabili al primo test, per chiarire cosa il software debba fare prima di implementarlo.https://2026.pycon.it/it/event/primi-passi-in-python-con-il-tdd-dalle-variabili-al-primo-test
-
Uso #ExtremeProgramming da quando facevo #debugging all'università, oltre 20 anni fa.
Una cosa non cambia: scrivere codice è facile, definirne tutto il comportamento no.
🎤 A #PyConIT 2026 porterò un #workshop su #Python 🐍 e #TDD:
dalle variabili al primo test, per chiarire cosa il software debba fare prima di implementarlo.https://2026.pycon.it/it/event/primi-passi-in-python-con-il-tdd-dalle-variabili-al-primo-test
-
The Apprentice Team: Stop setting up Early-Career Engineers to fail!
Splitting new cohorts across busy product teams rarely works. Instead, keep them together with a dedicated coach. They learn TDD, Ensemble Programming, and CI/CD on real work in a structured 2-year journey.
We need to engineer junior talent development.
Full blueprint: https://medium.com/cloudnative-ly/the-apprentice-team-cf55117bacba
-
Wednesday Links - Edition 2026-05-13
https://dev.to/0xkkocel/wednesday-links-edition-2026-05-13-554g
#java #jvm #tdd #kotlin -
Mindera is hiring Senior Frontend Engineer (React Native)
🔧 #react #reactnative #javascript #typescript #firebase #android #ios #redux #api #graphql #rest #cicd #tdd #seniorengineer
🌎 Ho Chi Minh City, Vietnam
⏰ Full-time
🏢 MinderaJob details https://jobsfordevelopers.com/jobs/senior-frontend-engineer-react-native-at-mindera-com-feb-25-2026-7e5386?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
Mindera is hiring Senior Frontend Engineer (React Native)
🔧 #react #reactnative #javascript #typescript #firebase #android #ios #redux #api #graphql #rest #cicd #tdd #seniorengineer
🌎 Ho Chi Minh City, Vietnam
⏰ Full-time
🏢 MinderaJob details https://jobsfordevelopers.com/jobs/senior-frontend-engineer-react-native-at-mindera-com-feb-25-2026-7e5386?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
Mindera is hiring Senior Frontend Engineer (React Native)
🔧 #react #reactnative #javascript #typescript #firebase #android #ios #redux #api #graphql #rest #cicd #tdd #seniorengineer
🌎 Ho Chi Minh City, Vietnam
⏰ Full-time
🏢 MinderaJob details https://jobsfordevelopers.com/jobs/senior-frontend-engineer-react-native-at-mindera-com-feb-25-2026-7e5386?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
Mindera is hiring Senior Frontend Engineer (React Native)
🔧 #react #reactnative #javascript #typescript #firebase #android #ios #redux #api #graphql #rest #cicd #tdd #seniorengineer
🌎 Ho Chi Minh City, Vietnam
⏰ Full-time
🏢 MinderaJob details https://jobsfordevelopers.com/jobs/senior-frontend-engineer-react-native-at-mindera-com-feb-25-2026-7e5386?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
Mindera is hiring Senior Frontend Engineer (React Native)
🔧 #react #reactnative #javascript #typescript #firebase #android #ios #redux #api #graphql #rest #cicd #tdd #seniorengineer
🌎 Ho Chi Minh City, Vietnam
⏰ Full-time
🏢 MinderaJob details https://jobsfordevelopers.com/jobs/senior-frontend-engineer-react-native-at-mindera-com-feb-25-2026-7e5386?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
[Перевод] 37 советов и приемов по написанию качественных тестов для фронтенда
Мне нравится писать тесты. Написание теста и последующее обновление кода для его прохождения — всегда увлекательный процесс. Но нет ничего хуже, чем выяснение того, что проверяют существующие тесты (раньше я сам часто был автором таких тестов). Представляю вашему вниманию мои советы по написанию высококачественных тестов для фронтенда.
https://habr.com/ru/companies/timeweb/articles/1006680/
#javascript #js #testing #test #jest #vitest #timeweb_статьи_перевод #тестирование #тест #tdd
-
Oh, so it is 2026 already? And the month is February already? The last thing I remember is diving into a rabbit hole called "Surely writing my own c2ffi translator for my WGPU project is no big deal."
What's done is done. I am slowly recovering and ready to get back to my WGPU project. While the need for a custom translator is still debatable, I guess further practice will show if that's actually the case. Even if it was overkill, the time wasn't completely lost: I’ve learned more about Common Lisp and even did TDD for the first time in my life - who would've guessed it would finally happen in CL? :blobcat_thisisfine:
Behold, the monstrosity! https://github.com/keelah-mt/cl-kl-c2ffi
-
Oh, so it is 2026 already? And the month is February already? The last thing I remember is diving into a rabbit hole called "Surely writing my own c2ffi translator for my WGPU project is no big deal."
What's done is done. I am slowly recovering and ready to get back to my WGPU project. While the need for a custom translator is still debatable, I guess further practice will show if that's actually the case. Even if it was overkill, the time wasn't completely lost: I’ve learned more about Common Lisp and even did TDD for the first time in my life - who would've guessed it would finally happen in CL? :blobcat_thisisfine:
Behold, the monstrosity! https://github.com/keelah-mt/cl-kl-c2ffi