Interesting Java-related links. Week 16

  1. PODAM – a pretty small but absolutely useful util for testing. I’ve written creating random objects  numerous times to verify or prototype functionality. It’s good to see such a customizable library instead of my own “wheels”.
  2. Article about unusual and nontrivial deadlocks from one of my favorite presenters of Joker/JavaPoint conferences.
  3. Seven Ineffective Coding Habits of Many Programmers (presentation) – pretty good ideas which I don’t think that important personally to me. Sometimes I feel like developers from the product companies live in an absolutely different world where they have other problems than provide project to the customer in time. 🙂
  4. VirtualJUG – Virtual JUG with sessions and podcast.
  5. Concurrency in Clojure – article on how concurrency is built in Clojure. Worth reading to get overview on STM and how it is achieved.
  6. Architecting Large Enterprise Java Projects (presentation) – Markus Eisele provides a 30000 foot overview on how microservices play with the JavaEE apps. Definitely worth watching to make you thinking over whether such a fashionable approach is suitable for your applications.
  7. Building “Bootiful”­ Microservices with Spring Cloud (presentation) – Josh Long presents how Spring Cloud can help in building microservices-based functionality. It’s just so full of various new things that my head nearly exploded.
  8. Git LFS – small intro on how to handle large files in Git.
  9. Machine Learning for Programming (presentation) – a sort of overview on where machine learning could be useful in terms of writing code.

Interesting stuff:

  1. ARC Welder – useful thing to run android apps without VirtualBox on my Linux laptop. OSMAnd navigation app worked for me like a charm. However if you have your own ADB running – you should STOP it! Otherwise you’ll be starring at the applications which do not start.
  2. TRUNCATE TABLE is not that useful when your table is referenced by some other table even if there’s no data on the other side. The same thing in MySQL, Oracle and MSSQL
  3. Compiled OpenJDK 9. Took less than 30 minutes including downloading sources using my pretty slow connection.
    [andy@andy-arch bin]$ ./java -version
    openjdk version "1.9.0-internal"
    OpenJDK Runtime Environment (build 1.9.0-internal-andy_2015_04_15_09_01-b00)
    OpenJDK 64-Bit Server VM (build 1.9.0-internal-andy_2015_04_15_09_01-b00, mixed mode)

    A new tool named jimage was introduced to see data inside module.  Unlike rt.jar is a simple ZIP file – the module in jdk9 can’t be opened by the standard GNU tools.
  4. Got some insight into the fancy microservice architectures. Sounds pretty interesting. But it seems like an absolute maintenance hell. There’s no such thing as a free lunch. Scalability and isolation come with huge complexity you need to deal with.
  5. Started using speedup in HTML5 YouTube player.
  6. now has Belarussian language support but not full!
  7. 001TYPE is not a valid name for XML tag
  8. Increased performance of one query 40000 times for the table consisting of 10000 records.
    SELECT count(distinct(t1.f2)) FROM threattrackingentry t1, threattrackingentry t2 where t1.f1 = t2.f1 and not( t1.f2 = t2.f2)
    turned into
    select sum(data.cnt) from (SELECT count(distinct(f2)) as cnt FROM threattracking group by f1) data where data.cnt > 1;
This entry was posted in Development, Education and tagged , , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s