Java Pub House

This is a presentation I did for the Chicago Java Users Group on the topic of multithreading. There are some solid foundations in here to start tackling multithreading programming. Some of it might've been already been seen in depth from our other episodes, but in all, it has good foundations for anyone that does multithreading programming.

Follow
Me
on
Twitter! (@fguime)(thanks!)

Hey it's winter (and not too many reasons to be outside, so might as well stay home and drink a few!) If you like what you hear, treat me a beer ! :) (It's the Java pub house after all :) 

Tweet, Tweet! (https://twitter.com/#!/fguime)


Vote for us in iTunes (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Questions, feedback or comments! comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book! (http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)

Direct download: JPHE36.mp3
Category:Multithreading -- posted at: 1:52pm CDT

You remember recursion right? that ugly, confusing thing they made you do either on CS-300, or at job interviews. Have you ever wondered how to make it safe and right? and why do we really use recursion? In this episode we go into proper recursion programming (and lose the fear of making it wrong), and understand why stacks get filled with it, and what problems do they really solve (answer, not many).

In addition we talk about the nature of Double objects, vs double the primitive (And why it is so hard to do == comparisons in doubles), plus some little known things about Strings (like interning). In all it has a little bit for everyone, so take a listen!

Follow
Me
on
Twitter! (@fguime)(thanks!)

And if you like what you hear, treat me a beer!

 

Hey it's winter (and not too many reasons to be outside, so might as well stay home and drink a few!) If you like what you hear, treat me a beer ! :) (It's the Java pub house after all :)



Vote for us in
iTunes (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Questions, feedback or comments!
comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book! (http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)
Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :)
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4

Direct download: JPHE35.mp3
Category:general -- posted at: 10:09am CDT

Episode 34. New Year's (2013) Resolution! Less bugs and more coverage! ----

Ok, so we all celebrated (but may not remember) the end of the old year and the beginning of a new year! This is a time for starting new things, and trying to be a little better. How about starting by looking at our code and squish some bugs! By using findbugs we can easily test for the 'duh' (and some not so duh) bugs quickly by looking and automatically analyzing our code. After adding Findbugs, we can then add Emma, which will look and measure our unit test code coverage (if you are into such a thing). These two tools are like the Richard Simmons that let us lose the unwanted bug weight in this new year!

If you just joined us, remember to follow me on Twitter! (@fguime)

Beer of the Episode: Anchor Brewing's Liberty Ale

|~|P |~|P |~|P |~|P |~|P |~|P |~|P Anchor Brewing's Liberty Ale
|_|  |_|  |_|  |_|  |_|  |_|  |_|

 

Hey it's winter (and not too many reasons to be outside, so might as well stay home and drink a few!) If you like what you hear, treat me a beer ! :) (It's the Java pub house after all :)


|~|P |~|P |~|P |~|P |~|P |~|P |~|P Anchor Brewing's Liberty Ale
|_|  |_|  |_|  |_|  |_|  |_|  |_|


Tweet, Tweet! (https://twitter.com/#!/fguime)
Findbugs
Findbugs Ant (check out the excludeFilter attribute to include/exclude stuff
Emma
Emma User's Guide (2.3 is what we discussed in the podcast!)

Vote for us in
iTunes (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Questions, feedback or comments!
comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book! (http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)
Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :)
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4

Direct download: JPHE34.mp3
Category:Tools/Libraries -- posted at: 7:38pm CDT

Episode 33. Does code dream when it hibernates? A quick look on the big things of Hibernate ----

Databases have been around forever! (or at least from the 1970s) and there are many things that try to hook Object Objected Programming with Relational Databases (namely, O/R mappers). Hibernate is the most known O/R mapper and, while effective sometimes it can be confusing. In this podcast we delve on how to understand our misunderstood friend, and finally fix those pesky weird Hibernate exceptions once and for all!

If you just joined us, remember to follow me on Twitter! (@fguime)

and, well, it is Xmas! if you feel generous, and like what you hear, treat me a beer!



Tweet, Tweet! (https://twitter.com/#!/fguime)
Hibernate Mappings (Annotations)
Hibernate Mappings (Annotation Cheat Sheet)
Hibernate Mappings (on hbm)
Database Normalization
Database Normalization

Vote for us in
iTunes (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Questions, feedback or comments!
comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book! (http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)
Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :)
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4

Direct download: JPHE33.mp3
Category:Tools/Libraries -- posted at: 10:35pm CDT


Shout out to the Chicago Java User's Group! Glad to be part of the Board!

And Shout out to Peter Hendriks and Tim Prijn for their presentation!(https://oracleus.activeevents.com/connect/sessionDetail.ww?SESSION_ID=4153). If interested, click on the 'media' icon on the right side!

With the establishment of Java 7 as the de-facto JRE of Oracle, the clock is ticking down for Java 6! It will be End-Of-Life around February 2013, so we better get going and upgrade! In this episode we cover how to migrate to Java 7, and cover some of the most notable Java 7 features (Networking nuts, your prayers have been answered!) while preparing a path to upgrade. If you have a Java 6 (or 5 or 4) project, this is mandatory listening!

If you just joined us, remember to follow me on Twitter! (@fguime)

and IF you really really really really really really really really really really really really really REALLY like what you hear, treat me a beer!




Tweet, Tweet! (https://twitter.com/#!/fguime)
Java 7 Features
Compatibility issues (At least glance at this section!)
Oracle session: CON4153 - Migrating Real-World Million-Line Code Bases to Java 7: Lessons Learned

Vote for us in
iTunes (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Questions, feedback or comments!
comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book! (http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)
Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :)
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4

Direct download: JPHE32.mp3
Category:general -- posted at: 3:47pm CDT


Big shout-out to everyone I met at JavaOne (including some avid podcast listeners!). Thanks for listening and for a great time down at JavaOne! Don't worry, we will be sharing all the stuff I learned on new episodes of the podcast.

It is also our Birthday (We have been airing episodes for a year!)! Happy to celebrate with everyone a year of the podcast (and if you want to celebrate it, treat me a beer! :) ).

With this episode we wrap the concept of generics and bounds (super / extends) and talk about type erasure (and compiler warnings that goes 'Hm, dunno what you're doing but I can't make sure it's right'

And, that...is that!

If you just joined us, remember to follow me on Twitter! (@fguime)

and IF you like what you hear, treat me a beer!

Beer of the Episode: Still hung-over from JavaOne's big concert (Go Pearl Jam!)


Tweet, Tweet! (https://twitter.com/#!/fguime)
Oracle Java Generics (what we're following on this podcast) http://docs.oracle.com/javase/tutorial/java/generics/
Dr Venkat presentation on Generics (Click on the "Media" at the right side for the presentation, a great presentation
Agile Developer (Dr Venkat's Must-check website and blog
Angelika Langer FAQ on Generics

Vote for us in iTunes (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Questions, feedback or comments! comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book! (http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)
Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :) https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4

Direct download: JPHE31.mp3
Category:general -- posted at: 11:14pm CDT

Episode 30. I always thought Generics were as good as brand name Erasers (Java Generics part 1) ----
Hi there! Finally back on a (hopefully) standard schedule. I have been moving a house with three kids, two cats, one wife, one dog, and one grandma (they are heavy!, just kidding!) and just found the box with the podcast equipment! we hit the ground running with Generics. What are the benefits (and potential pitfalls) of Generics? Why do we even need them at all? The syntax looks pretty confusing, but with some Jedi Mind tricks one can actually start seeing how they work. If you use Generics (Almost everyone does :)) you should take a listen!

Ah! and if you are going to JavaOne check my t-shirt on the previous post

And if you just joined us, remember to follow me on Twitter! (@fguime)

Also, we are getting close to our first

BIRTHDAY!

If you have followed us all year long, or just recently join us, and like what you hear, treat me a beer!

Beer of the Episode: No beer, just coffee (it's hard to move a whole house



Tweet, Tweet! (https://twitter.com/#!/fguime)
Oracle Java Generics (what we're following on this podcast) http://docs.oracle.com/javase/tutorial/java/generics/

Vote for us in iTunes (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Questions, feedback or comments! comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book! (http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)
Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :) https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4


Direct download: JPHE30.mp3
Category:general -- posted at: 12:33pm CDT

We go and visit the Primordial Java Concepts. As rules set in stone we explore the concept of multiple inheritance, method and variable scope (including the final keyword), abstract methods and @override. This is good for those starting up their Mad Java SkillZ (We're L33T, u K|\|0w?), or for those who were always curious why the language is this way.

And if you like the podcast, subscribe to my Twitter Feed! http://www.twitter.com/fguime

Beer of the Episode: Leinenkugel's Sunset Wheat
|~|P |~|P |~|P |~|P |~|P |~|P |~|P Leinenkugel's Sunset Wheat
|_|  |_|  |_|  |_|  |_|  |_|  |_|

 

It's THE END OF SUMMER! If you like what you hear, DEFINITIVELY, treat me a beer ! :) (It's the Java pub house after all :) https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4
|~|P |~|P |~|P |~|P |~|P |~|P |~|P Leinenkugel's Sunset Wheat
|_|  |_|  |_|  |_|  |_|  |_|  |_|

 

Tweet, Tweet!(https://twitter.com/#!/fguime)

Scopeshttp://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html

Override annotationhttp://stackoverflow.com/questions/94361/when-do-you-use-javas-override-annotation-and-why

Abstract Methods and Classeshttp://docs.oracle.com/javase/tutorial/java/IandI/abstract.html

Vote for us in iTunes(http://itunes.apple.com/us/podcast/java-pub-house/id467641329)

Questions, feedback or comments! comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book!(http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)

Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :) https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4

Direct download: JPHE29.mp3
Category:general -- posted at: 10:11pm CDT

Episode 28. Extra! Extra! JMS Delivering Messages to your App! Extra! Extra! ----

Java Message Service (or JMS for short) is a collection of APIs and implementations that allows you to send "messages" across your applcation. But why is it so popular?, and what exactly is it trying to solve (what is a message anyways)? In this episode, we take our bycicle, and trace the delivery route of JMS to figure out the good, and avoid some JMS potholes along the way, making for a smooth message delivery experience!

Beer of the Episode: Leinenkugel's Summer Shandy
|~|P |~|P |~|P |~|P |~|P |~|P |~|P Leinenkugel's Summer Shandy
|_| |_| |_| |_| |_| |_| |_|

 

It's SUMMER! If you like what you hear, DEFINITIVELY, treat me a beer ! :) (It's the Java pub house after all :) https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4


|~|P |~|P |~|P |~|P |~|P |~|P |~|P Leinenkugel's Summer Shandy
|_|  |_|  |_|  |_|  |_|  |_|  |_|

 

Tweet, Tweet!(https://twitter.com/#!/fguime)

Enterprise Integration Patternshttp://www.amazon.com/Enterprise-Integration-Patterns-Designing-Deploying/dp/0321200683

Intro to JMS Conceptshttp://docs.oracle.com/javaee/1.3/jms/tutorial/1_3_1-fcs/doc/basics.html

Apache ActiveMQhttp://activemq.apache.org/

ActiveMQ Language Clients (ActionScript, Ajax, C, C++, C#, .Net, Delphi, Erlang, Flash, Haskell, Javascript, Perl, PHP, Pike, Python, Ruby, Smalltalk, Websockets)http://activemq.apache.org/cross-language-clients.html

RabbitMQ http://www.rabbitmq.com/

JMS Description and Implementationhttp://en.wikipedia.org/wiki/Java_Message_Service

Embed ActiveMQ Broker in codehttp://activemq.apache.org/how-do-i-embed-a-broker-inside-a-connection.html

JMS Tutorialhttp://docs.oracle.com/javaee/1.4/tutorial/doc/JMS.html#wp84181

Vote for us in iTunes(http://itunes.apple.com/us/podcast/java-pub-house/id467641329)

Questions, feedback or comments! comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book!(http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)

Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :) https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4

Direct download: JPHE28.mp3
Category:Tools/Libraries -- posted at: 7:51pm CDT

Episode 27. There's a Log File in the folder in the middle of the App ----

(Sing to the children's song There's a hole in the middle of the sea)
Logging is part of everyday production debugging life. If you ever had to troubleshoot a production application, the you most likely have looked at log files. These log files can either be a salvation, or an inmense source of frustration. In this podcast we delve into the different logging frameworks, and more importantly, what to log and not to log (and how to log it).


|~|P |~|P |~|P |~|P |~|P |~|P |~|P Beer! (or Mai Tais!)
|_|  |_|  |_|  |_|  |_|  |_|  |_|

 

It's SUMMER! If you like what you hear, DEFINITIVELY, treat me a beer ! :) (It's the Java pub house after all :) https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4
|~|P |~|P |~|P |~|P |~|P |~|P |~|P Beer! (or Mai Tais!)
|_|  |_|  |_|  |_|  |_|  |_|  |_|

 

Tweet, Tweet! (https://twitter.com/#!/fguime) Java Logging Frameworkhttp://en.wikipedia.org/wiki/Java_logging_framework

SLF4J (The facade frameworkhttp://www.slf4j.org/

Log4Jhttp://logging.apache.org/log4j/1.2/index.html

Java Logging APIhttp://docs.oracle.com/javase/1.4.2/docs/guide/util/logging/

The linux utilities for windows! (Cygwin)http://www.cygwin.com/

Grep! Grep grepping grep!http://en.wikipedia.org/wiki/Grep

More Grephttp://www.cyberciti.biz/faq/howto-use-grep-command-in-linux-unix/

Vote for us in iTunes(http://itunes.apple.com/us/podcast/java-pub-house/id467641329)

Questions, feedback or comments! comments@javapubhouse.com

Subscribe to our podcast! (http://javapubhouse.libsyn.com/rss)
ITunes link (http://itunes.apple.com/us/podcast/java-pub-house/id467641329)
Java 7 Recipes book!(http://www.amazon.com/gp/product/1430240563/ref=as_li_ss_il?ie=UTF8&tag=meq-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1430240563)

Hey! if you like what you hear, treat me a beer! (It's the Java pub house after all :) https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Z8V2ZWV93UMW4

Direct download: JPHE27.mp3
Category:Tools/Libraries -- posted at: 5:39pm CDT