It is hard to imagine life before self-service in grocery stores. For developers and young startups growing up with cloud solutions like Amazon Web Services, Heroku and Engine Yard, self-service is already becoming the norm. Some of these folks probably cannot even imagine a world before this.
This is part of a series of micro-blogs (somewhere between a tweet and a full on blog) on Clean Code. In this post, I’m going to focus on one big culprit in obfuscated, not clear clean code — Conditionals (i.e. if statements). Let’s look at an example:
One of the asides I made in “Programmers without TDD will be unemployable” which caused a bit of outrage in the testing community was my comment “Manual testing is a sin.” While I have been unfair to many testers, and somewhat simplistic, I still stand by the statement. Let me expand on why I still stand by the comment and why I am wrong.
Test-Driven Development with Mockito provides a general introduction to test-driven development (TDD) before looking at application of Mockito to implement test doubles as part of test-driven development.
When going for test-driven development, we all know that the unit test code becomes critical part of the code base. Is because of this that it is really important to have a solid unit test source code structure; flexible, intuitive and maintainable enough so that when the amount of unit tests grow, it does not become an uncontrollable mess.
It's not clear, actually, if this involves a TCP/IP "Mystery". What it may involve is a simple lack of ability to communicate. Or something.
Our skills and customs as programmers always tend to leak into our lives. If you haven't realized, you are probably trying to do everything an agile way. Aren't you? In this article, see one of these leaks in action: duplicating the bug.
The suspect’s DNA had been found at 40 crime scenes, linking her to burglaries, narcotics and six murders. It turns out the infamous ‘phantom’ wasn’t a murderer at all. Police were hunting an innocent factory worker who fatefully handled the same cotton swabs used to collect DNA samples from the crime scenes.
My preference is to simply remove the private modifier and make the method package private. Why is this a good idea? I will get to that after I discus the problems with the other methods.
The client sees the website in a different way, and if there is a problem, they will describe it to you with the words they know. Every developer has spent time talking or chatting or exchanging emails with a client who wants work done, but can't explain what they need in a way the developer can understand.
Sometimes you have to extend or maintain a legacy codebase that usually contains few cohesive classes. There often isn't time in this hectic agile world to make such classes easy to unit test the standard way. When you are trying to unit test such classes, you often realize that unusual mocking is needed.
The last couple of months I have met several young developers that either looking for the first job or are still trying to get their bachelor degree. Many of them asked me to give them my advice on how they can make their first steps in the software development career. In this post I summarize my advice to all these “young” and ambitious developers. Don’t be fooled by the word young.
In business there are many ways to gain a better perspective about a project Customer visits are a fantastic way to expose developers to actual and/or potential clients. Initiating a visit shows customers a personal level of attention that they rarely get from most companies they interact with.
The idea that the way to increase Agility is to reduce the number of disciplines and replace everything with a super developer who can manage the team, work with the business, write great code, test it and then manage its deployment and support, is a pipe dream
Code review is a great software instrument and you should definitely use it to improve the quality of your code. But like any other tool, it may be misused sometimes. That’s why I came up with a list of best practices to guide you when reviewing your peers’ code.
Key management is defined as a group of operations such as generating, exchanging, storing and protecting security artifacts. Without effective management of such valuable resources, the system can be easily compromised by attackers.
There is hardly anything more infuriating that seeing a method @Deprecated without a proper documentation. I feel lost. Should I still use the method?
As an Enterprise Architect, I took an interest in this book as an opportunity to validate my understanding of security and ensure that ,in the design and guidance work that I do, I am providing good insights and directions so that the application architects and developers are both ensuring good security practices.
Canary Tests are minimal tests to quickly and automatically verify that the everything you depend on is ready.
Getting your arms around all those tools and frameworks needed to write solid, tested cookbooks gets you spinning. You need to install Food Critic, Chef Spec, Berkshelf – and the list goes on. This set up can easily take up to half a day or more.
This book is a must-read for all Git users. It’s usable on all levels, from absolute newbie to someone who feels fairly proficient with Git. I’ve been using Git daily for quite a while, and it really helped me understand what is going on. Everything is very accessible, with plenty of examples as small and practical as possible, as well as some images.
This installment of the DevOps Dudes series from Matthias Marshall looks at DevOps and mountain climbing.
Every week here and in our newsletter, we feature a new developer/blogger from the DZone community to catch up and find out what he or she is working on now and what's coming next. This week we're talking to Rafael Winterhalter, Java enthusiast and software engineer at Kantega in Oslo, Norway.
Open source is playing an increasingly important role in IT infrastructure generally. But is open source a natural evolutionary path for all IT disciplines, or are there certain characteristics that make some areas more ripe for open source than others?
Given an array of n rows numbered 0 to n-1, each of m seats 0 to m-1, where the cells have values True (meaning the seat is available) or False (meaning the seat is taken). A customer states that his favorite seat is at row x and seat y on that row.