Sunday, November 12, 2017

Refactoring vs. Redesign

It often happens that developers use words Refactoring and Redesign interchangeably. Why? I think that is because in both cases we are ending with the same result - code that is changed, but it does exactly the same thing as it was capable of doing at the beginning of the process.

Yet, in my opinion those words are not exact synonymous and before we will start to refactor the code it is good to know the difference.

Thursday, October 19, 2017

Hack Yeah - Attack on the Guinness World Record!

So many things happens recently! This time I have got a pleasure to invite you on HackYeah!

Where: Tauron Arena Krakow
When: 27-29 October 2017 
Topic: Extreme life
More details: Facebook page

The main goal is your own interpretation of the EXTREME. 
Gather your fellow developers (team <= 6 devs), don't hesitate and just be there

See you soon!

PS I've got some free tickets, so if you want to go there and still don't have it just write to me on Twitter, LinkedIn, Facebook or in any other way you prefer.

Market spoiled us!

It’s been too long since my last article. During this time I’ve changed my job, were on couple conferences, conducted some trainings. I was pretty active. I just didn’t have too much time for writing. However, each conference and training is a possibility to talk with many various people and that results in plenty of ideas for future articles.
Ok, let’s move forward.

Today I want to share with you some observations regarding the state of the IT industry. Recently I’ve been thinking about it quite a lot. And the more I thought, the more convinced I was about my suspicions - the market spoiled us!
We are getting too confident, harsh and demanding. We are getting lazy in a bad way. And we're getting less and less attached to the things we do.

Tuesday, September 26, 2017

Byte My Code - 7 października, Wrocław

Witam po dłuższej nieobecności i od razu zapraszam 7 października do Wrocławia na nową konferencję Javową ByteMyCode, której organizatorem jest UBS, a o której patronat zostałem poproszony.

Jeżeli macie ochotę posłuchać co mają do powiedzenia Josh Long, Kirk Pepperdine, Michał Kordasa to nie zwlekajcie i się rejestrujcie
Oczywiście gorąco zapraszam również na moją prezentację, podczas której opowiem Wam o zakamarkach Event Processingu.

Do zobaczenia niebawem!

PS. Mam jedną darmową wejściówkę, którą chętnie oddam. Co trzeba zrobić? Wystarczy skontaktować się ze mną w jakikolwiek sposób (Twitter, Facebook, komentarz pod postem, itp.). 
Kto pierwszy, ten lepszy :)

Monday, June 19, 2017

Pair Programming to the rescue once again!

Some time ago I wrote how pair programming can help keep high quality of the code. But that’s not all!
Today I want to explain why you should practice pair programming to onboard a new joiner. It makes the whole process faster and more efficient.

Friday, March 3, 2017

The code that does not have to be written

Do you know which code is best? It’s the one that does not have to be written at all!

As developers we often solve non-trivial problems. We have to analyze and understand each important aspect of a problem. Then we have to “convert” the result of such analysis into code. This code has to meet all the requirements. It has to be understandable. To achieve this, we talk about design and structure of the code and sometimes challenge it to make it better. And after a while we are there, with a clear picture in our heads. Now the funny part begins, now’s the time for coding!

Wednesday, February 1, 2017

KrkDataLink#1: The missing link between Functional Programming and Data Science

There's a new Meetup in the city of my ancestors!
If you are interested in Java and Data Science you just have to go to KrkDataLink (15th February, Kraków).

What is waiting for you?
  • Functional Programming in Java by Marcin Stępień
  • Using Scala for Big Data in e-commerce by Rafał Cycoń

Don't hesitate and just be there.

Monday, January 23, 2017

For the sake of laziness!

I like well written code. I like to reach out for perfection. I like to look for the most suitable design and solution. I’m doing it not because I treat software development as a kind of art and myself as an artist. I never looked at this in this way. I’m doing it, because I know it pays off. And one of my greatest motivators is my own laziness.

Tuesday, January 10, 2017

Lazy-loading is a Code Smell

Have you ever seen those huge objects with many attributes? These domain objects where we are using lazy-loading because we do not want to retrieve too much information from the database? I bet you’ve had this doubtful pleasure.

Today I want to share with you my impressions about them - using lazy-loading should be treated as a code smell!
Let me explain myself:
  • Lazy-loading means that sometimes you won’t need some attributes of an object. Those attributes will be necessary in a different context. Doesn’t it mean that you are building different objects depending on context?
  • The functionality that is using this object knows definitely too much. It knows the API of the object and this API contains also the methods that require attributes which were not loaded. Great, isn’t it?
  • You have to remember what is needed in each place and what is not needed …
  • … and, what is even worse, you have to remember what you may use and what methods are not supported in a particular place.