{"id":158,"date":"2015-09-02T19:30:27","date_gmt":"2015-09-02T19:30:27","guid":{"rendered":"http:\/\/mlapshin.com\/?page_id=158"},"modified":"2015-09-18T10:01:37","modified_gmt":"2015-09-18T10:01:37","slug":"jdk","status":"publish","type":"page","link":"https:\/\/mlapshin.com\/index.php\/projects\/jdk\/","title":{"rendered":"JDK Contribution"},"content":{"rendered":"<div id=\"attachment_286\" style=\"width: 373px\" class=\"wp-caption alignleft\"><a href=\"https:\/\/docs.oracle.com\/javase\/tutorial\/uiswing\/components\/menu.html\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-286\" class=\"wp-image-286\" title=\"How to Use Menus Tutorial\" src=\"https:\/\/mlapshin.com\/wp-content\/uploads\/2015\/09\/MenuLookDemo.png\" alt=\"JMenu Demo\" width=\"363\" height=\"220\" srcset=\"https:\/\/mlapshin.com\/wp-content\/uploads\/2015\/09\/MenuLookDemo.png 474w, https:\/\/mlapshin.com\/wp-content\/uploads\/2015\/09\/MenuLookDemo-300x182.png 300w\" sizes=\"auto, (max-width: 363px) 100vw, 363px\" \/><\/a><p id=\"caption-attachment-286\" class=\"wp-caption-text\">JMenu Demo<\/p><\/div>\n<p>I was a member of the legendary Swing team and developed the core GUI java library.<br \/>\nI was responsible for a number of Swing components such as menus, internal frames, labels and combo boxes.<\/p>\n<p>My biggest contribution to JDK is JMenu component improvements. I completely rewrote its drawing algorithm which fixed a bunch of old bugs. So, when you see a drop-down menu or a popup menu\u00a0in a Java Swing application, know, it uses my algorithm to show icons, labels and hot keys.<\/p>\n<div id=\"attachment_289\" style=\"width: 231px\" class=\"wp-caption alignright\"><a href=\"https:\/\/docs.oracle.com\/javase\/tutorial\/uiswing\/components\/combobox.html\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-289\" class=\"wp-image-289\" title=\"How to Use Combo Boxes Tutorial\" src=\"https:\/\/mlapshin.com\/wp-content\/uploads\/2015\/09\/CustomComboBoxDemoMetal.png\" alt=\"ComboBox Demo\" width=\"221\" height=\"171\" \/><\/a><p id=\"caption-attachment-289\" class=\"wp-caption-text\">JComboBox Demo<\/p><\/div>\n<p>Other component which I improved a lot is JComboBox. I fixed several tens of related bugs.<\/p>\n<p>Smaller contributions were made to JLabel and JInternalFrame. Yep, I also thought what could be simpler than a label? However, I fixed a long-lasted irritating bug related to character bearings (left and right side label alignment for different symbols and fonts).<\/p>\n<h2>Java Evangelist Role<\/h2>\n<p><a href=\"https:\/\/www.oracle.com\/javaone\/index.html\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-350 size-full\" title=\"JavaOne Conference\" src=\"https:\/\/mlapshin.com\/wp-content\/uploads\/2015\/09\/javaone-logo-2015.png\" alt=\"JavaOne Logo\" width=\"130\" height=\"114\" \/><\/a>At\u00a0Sun Microsystems it was highly appreciated when an employee not only works hard, but actively helps to promote company products. It was interesting to me. I was very proud that I added my own\u00a0small bit to the Java language. I still think Java is the best programming language and I strive to popularize it as much as possible.<\/p>\n<p>So, you can find my name among <a href=\"http:\/\/web.archive.org\/web\/20080216200251\/http:\/\/developers.sun.com\/learning\/javaoneonline\/j1sessn.jsp?sessn=TS-3316&amp;yr=2007&amp;track=2\" target=\"_blank\">participants <\/a>of <a href=\"http:\/\/web.archive.org\/web\/20070329040019\/http:\/\/java.sun.com\/javaone\/sf\/tracks.jsp\" target=\"_blank\">JavaOne 2007<\/a>. My main responsibility was to stand at the Swing Booth and answer auditory questions.<\/p>\n<p>Three years in a row I was a\u00a0permanent member of <a href=\"http:\/\/www.youtube.com\/watch?v=cH6geM1IIQ0\" target=\"_blank\">Sun Tech Days<\/a> &#8211; a smaller Java conference held by Sun Microsystems in Saint-Petersburg. My primary duty was\u00a0exactly the same &#8211; answer questions about new Swing features and JDK.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I was a member of the legendary Swing team and developed the core GUI java library. I was responsible for a number of Swing components such as menus, internal frames, labels and combo boxes. My biggest contribution to JDK is&hellip; <br \/><a class=\"read-more-button\" href=\"https:\/\/mlapshin.com\/index.php\/projects\/jdk\/\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":140,"menu_order":60,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-158","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/pages\/158","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/comments?post=158"}],"version-history":[{"count":17,"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/pages\/158\/revisions"}],"predecessor-version":[{"id":356,"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/pages\/158\/revisions\/356"}],"up":[{"embeddable":true,"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/pages\/140"}],"wp:attachment":[{"href":"https:\/\/mlapshin.com\/index.php\/wp-json\/wp\/v2\/media?parent=158"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}