<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Java on Karpoke - Just Another Blog</title><link>http://karpoke.ignaciocano.com/tags/java/</link><description>Recent content in Java on Karpoke - Just Another Blog</description><generator>Hugo -- 0.167.0</generator><language>es</language><lastBuildDate>Wed, 18 Mar 2026 12:00:00 +0100</lastBuildDate><atom:link href="http://karpoke.ignaciocano.com/tags/java/index.xml" rel="self" type="application/rss+xml"/><item><title>Java Microservices(SCS) vs. Spring Modulith</title><link>http://karpoke.ignaciocano.com/2026/03/18/java-microservices-scs-vs-spring-modulith/</link><pubDate>Wed, 18 Mar 2026 12:00:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2026/03/18/java-microservices-scs-vs-spring-modulith/</guid><description>&lt;blockquote&gt;
&lt;p&gt;This article examines both architectures, highlighting their strengths,
weaknesses, trade-offs, and guidance on when each is most appropriate.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» dzone.com | &lt;a href="https://dzone.com/articles/java-microservicesscs-vs-spring-modulith"&gt;dzone.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Java Algorithms: Linked List in Binary Tree (LeetCode)</title><link>http://karpoke.ignaciocano.com/2022/07/12/java-algorithms-linked-list-in-binary-tree-leetcode/</link><pubDate>Tue, 12 Jul 2022 09:36:15 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2022/07/12/java-algorithms-linked-list-in-binary-tree-leetcode/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Linked List in Binary Tree&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» hackernoon.com | &lt;a href="https://hackernoon.com/java-algorithms-linked-list-in-binary-tree-leetcode"&gt;hackernoon.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Teletexto #010</title><link>http://karpoke.ignaciocano.com/2021/06/02/teletexto-010/</link><pubDate>Wed, 02 Jun 2021 07:19:58 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/06/02/teletexto-010/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Teletexto #010&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» blog.adrianistan.eu | &lt;a href="https://blog.adrianistan.eu/teletexto-010"&gt;blog.adrianistan.eu&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Data Transfer Object (DTO) un concepto clave</title><link>http://karpoke.ignaciocano.com/2020/08/29/data-transfer-object-dto-un-concepto-clave/</link><pubDate>Sat, 29 Aug 2020 14:22:51 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/08/29/data-transfer-object-dto-un-concepto-clave/</guid><description>&lt;blockquote&gt;
&lt;p&gt;El uso de DTO o Data Transfer Object es uno de los conceptos más
habituales a nivel de Arquitectura cuando devolvemos en nuestros
servicios estructuras de dato&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» Cecilio Álvarez Caules | &lt;a href="https://www.arquitecturajava.com/data-transfer-object-dto-un-concepto-clave/"&gt;arquitecturajava.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Blog Bitix: Hemeroteca #17</title><link>http://karpoke.ignaciocano.com/2020/06/28/blog-bitix-hemeroteca-17/</link><pubDate>Sun, 28 Jun 2020 10:22:17 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/06/28/blog-bitix-hemeroteca-17/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Que leáis este blog para mi es mucho aparte de para compartir
conocimiento que voy aprendiendo me permite canalizar la frustración de
no poder usar en el trabajo mucho de lo que escribo, demasiados años ya.
Los pocos comentarios, retweets y favoritos en twitter que recibo me…&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» picodotdev | &lt;a href="https://picodotdev.github.io/blog-bitix/2020/06/hemeroteca-17/"&gt;picodotdev.github.io&lt;/a&gt;&lt;/p&gt;</description></item><item><title>10 Intellij Idea's plugins I'm using</title><link>http://karpoke.ignaciocano.com/2020/06/10/10-intellij-idea-s-plugins-i-m-using/</link><pubDate>Wed, 10 Jun 2020 15:38:47 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/06/10/10-intellij-idea-s-plugins-i-m-using/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Cover image:
&lt;a href="https://pl.m.wikipedia.org/wiki/Plik:IntelliJIDEA_2016.3_Community.png"&gt;https://pl.m.wikipedia.org/wiki/Plik:IntelliJIDEA_2016.3_Community.png&lt;/a&gt;
Intellij Idea ha&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/mateuszjarzyna/intellij-idea-s-plugins-i-m-using-2d0d"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>10 OOP Design Principles Every Programmer Should Know</title><link>http://karpoke.ignaciocano.com/2019/05/06/10-oop-design-principles-every-programmer-should-know/</link><pubDate>Mon, 06 May 2019 09:56:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2019/05/06/10-oop-design-principles-every-programmer-should-know/</guid><description>&lt;blockquote&gt;
&lt;p&gt;The Object-Oriented Design Principles are the core of OOP programming, but I
have seen most of the Java programmers chasing design patterns like
Singleton pattern, Decorator pattern, or Observer pattern, and not putting
enough attention on learning Object-oriented analysis and design. It’s
important to learn the basics of Object-oriented programming like
Abstraction, Encapsulation, Polymorphism and Inheritance. But, at the same
time, it’s equally important to know object-oriented design principles.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» Hacker Noon | &lt;a href="https://hackernoon.com/10-oop-design-principles-every-programmer-should-know-f187436caf65----3a8144eabfe3---4"&gt;hackernoon.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Proving that Android’s, Java’s and Python’s sorting algorithm is broken (and showing how to fix it)</title><link>http://karpoke.ignaciocano.com/2015/02/28/proving-that-androids-javas-and-pythons-sorting-algorithm-is-broken-and-showing-how-to-fix-it/</link><pubDate>Sat, 28 Feb 2015 14:31:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2015/02/28/proving-that-androids-javas-and-pythons-sorting-algorithm-is-broken-and-showing-how-to-fix-it/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Tim Peters developed the Timsort hybrid sorting algorithm in 2002. It
is a clever combination of ideas from merge sort and insertion sort,
and designed to perform well on real world data. TimSort was first
developed for Python, but later ported to Java (where it appears as
java.util.Collections.sort and java.util.Arrays.sort) by Joshua Bloch
(the designer of Java Collections who also pointed out that most
binary search algorithms were broken). TimSort is today used as the
default sorting algorithm for Android SDK, Sun’s JDK and OpenJDK.
Given the popularity of these platforms this means that the number of
computers, cloud services and mobile phones that use TimSort for
sorting is well into the billions. Fast forward to 2015. After we had
successfully verified Counting and Radix sort implementations in Java
(J. Autom. Reasoning 53(2), 129-139) with a formal verification tool
called KeY, we were looking for a new challenge. TimSort seemed to fit
the bill, as it is rather complex and widely used. Unfortunately, we
weren’t able to prove its correctness. A closer analysis showed that
this was, quite simply, because TimSort was broken and our theoretical
considerations finally led us to a path towards finding the bug
(interestingly, that bug appears already in the Python
implementation). This blog post shows how we did it.&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>Why Java is a compiled language and Python is not</title><link>http://karpoke.ignaciocano.com/2014/05/24/why-java-is-a-compiled-language-and-python-is-not/</link><pubDate>Sat, 24 May 2014 07:36:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2014/05/24/why-java-is-a-compiled-language-and-python-is-not/</guid><description>&lt;blockquote&gt;
&lt;p&gt;One comment’s answer was ’marketing’, which in a sense is correct; one
reason we call Java a compiled language is that that’s what Sun called
it from the start. Another comment noted that Java has an explicit
compilation phase that is separate from having the JVM execute your
Java program by interpreting the bytecodes. All of this points us
towards what I feel is the real answer:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;In Java, bytecode is a first class object. In Python it’s an
internal implementation detail.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;</description></item></channel></rss>