I have long intended to write about Project Lombok, so much so that I am probably doing it when every self-respecting Java developer has already heard about it. Nevertheless, it is worth mentioning, if only to remind myself that one should not hesitate to try performance-enhancing tools and see if they fit, and Lombok is certainly enhancing performance of a Java-coder by allowing to simultaneously write less code and add to its quality, which is no small matter.
What is it that Java opponents usually say about its weaknesses?
Java is too verbose.
(c) Every Java opponent
Unfortunately, there’s a lot of truth in this statement. Continue reading
We live in a world where technology seemingly lessens the need for actual office space. In IT industry especially, there seems to be less and less sense to actually come to work. At some point, telecommuting was all the rage, to the extent that a lot of big software companies offered unlimited remote work possibilities as one of the main perks. A few years back though this trend shifted a little bit. First Yahoo shut down its remote work back in 2013-2014, then this year, IBM did. Amazon planned to hire a lot of remote workers in 2017, but with the catch of those position being rather low-paid.
Image taken from Pixabay – https://pixabay.com/en/laptop-computer-pc-notebook-green-2055522/
I have recently completed a course on Coursera called Mindshift, which continues the series or courses started by Learning how to learn. The course was really an eye-opener in some ways for me. Some takeaways I would hardly know about from anywhere else:
- There’s a mode your brain functions in, called diffuse thinking. It allows the brain to absorb the knowledge you have and to build and establish the neuron chains (please don’t quote me!), to make connections to other data that you already have. That is why it is very useful to switch off, after you have been concentrating on some hard problem. While you are doing something else and let your mind wander, it can analyze the information in the background in diffuse, unfocused mode and you might later arrive to the solution easier, as if it happened on its own.
- When you feel emotional, it helps to put labels on your feelings. It helps your brain to switch to the more rational areas of the brain and tone down your emotions.
- The best way to learn is by practicing something. No amount of listening or reading will have the same effect.
- When you have to deal with procrastinations, common ways are to increase pleasantness of the task, probability of reward, and get rid of distractions.
- Some features that you think are your drawbacks can also help you in your learning, life and work. For example, if you are a slow learner, you might have more time and will to go into detail and you might be more flexible, more willing to go off of the well-trodden path.
There was a lot more to that course – I encourage you to and look into it. There was, however, two lectures that were most interesting to me, almost in the end of the course. In them, Professor Barbara Oakley talked about how the videos for the lectures are made and what makes a great MOOC video. These were unexpectedly enlightening. I understood a lot of things about the course videos that I haven’t consiously noticed – for example, how and why animations are used, as in, why the Professor suddenly moves across the screen (or even turns upside down) in an animation! I think a lot of course-makers might benefit from these tips. And indeed they work, because I have listened to a lot of different MOOCs and I can safely say that the Mindshift videos were the most engaging, the least prone to make your mind wander.
Professor McGonagall would not like to see you distracted. – Image from giphy https://giphy.com/gifs/professor-lJxKkyA2B5GyQ/links
All in all, I would highly recommend the course. I might even return to it and listen to the material once more when I have the chance – after all, repetition is also one of the best things you can do to really absorb the material!
Posted in Learning, MOOC
I have been at two conferences very recently. The first one was a Devoxx conference in Belgium, the other one was GoTo Berlin 2017. Both were quite interesting and had some great speakers. But being a spectator, I was noticing some things which help give great talks… and which don’t. So, what are some do’s and don’ts that I could name?
Colin Firth is perfect in every role – image taken from Giphy https://gph.is/1qj4GjG
There’s a lot of utility Java libraries that many projects use as a matter of fact. However, some developers still either remain blissfully unaware that they exists, or “do not want to include too many unnecessary dependencies”, or just don’t know the extent of the APIs that are already included and can be used – but alas, remain untouched. So, what are our options? Continue reading
In our company, no one knows how much others are paid. It was the same in my previous company. I once disclosed my salary accidentally in a previous company, when I gave my application for a US visa to other colleagues as an example of how to fill in the forms. I didn’t think of somehow covering out the salary field. In truth, I forgot about that field at all. So, everyone knew how much I earned, but I still didn’t know that about anyone else. Continue reading
This article is a very simple example of a working asynchronous REST application, made with Spring Boot + Java 8. Spring Boot makes developing web applications almost ridiculously easy, but to simplify the task even more, I took an example from Spring repository called rest-service , forked it to my own repository and changed it for my purposes to create two applications: a client and a server.
Our server app will be a simple REST web service that will query GitHub to get some user data and return it. Our client app will also be a REST web service… that will query the first app! Continue reading