| DistroWatch Weekly
|DistroWatch Weekly, Issue 102, 30 May 2005
Welcome to this year's 22nd issue of DistroWatch Weekly! Last week, your DistroWatch staff had the extreme pleasure to meet with Dr Richard M Stallman, a truly fascinating, albeit controversial figure, dedicated to fight for our computing freedom; Robert Storey has summarised the experience. Also in this week's issue - a brief look at Libranet GNU/Linux 3.0 and a call for voting on which new packages you want to see tracked by DistroWatch from next month. Happy reading!
DistroWatch meets RMS by Robert Storey
I am Saint IGNUsius of the Church of Emacs. A blessing upon your computer, my child.
-- Richard M Stallman
Many things have been said about Richard M Stallman, otherwise known as RMS. "A brilliant programmer and father of the free software movement. Lacking people skills. Fierce defender of freedom. Can't hold a steady job. A great asset to the free software community. A liability to the open source community. A passionate, funny, and very much in demand speaker. In bad need of a haircut and a shave."
Dr Richard M Stallman
RMS is, if nothing else, a controversial figure. His uncompromising, take-no-prisoners approach to freedom and free software offends some, but pleases many. He spends much of his time travelling the world, giving talks to students, businesspeople, IT executives and the occasional politician, broadcasting the message that software should be free, open, and unencumbered by patents and secret protocols.
A little bit of background. RMS is the original author of the GPL (General Public License), also known as "copyleft" - the license under which the Linux kernel (and much other software) has been released. He also wrote Emacs, the Swiss-army knife of text editors. Along with some like-minded friends, he produced the GNU (pronounced "ge-noo") operating system which included, among other things, the crucial GCC compiler which is used today to compile Linux and the BSDs. Though he had help in these fine endeavours, to call RMS the father of free software is not much of an exaggeration. It is also quite possible that he can walk on water.
The downside (if it is indeed a downside) is RMS's unwillingness to compromise in any way. He shows little patience for those who disagree with him - his lack of diplomacy has been commented upon many times. One thing he absolutely insists on is that we all say "GNU/Linux" rather than just "Linux" when referring to a certain popular operating system ("Linux", he points out, is just the name of Linus Torvalds' kernel). Indeed, the fastest way to offend RMS is to congratulate him for all the fantastic work he's done to make Linux possible.
RMS also voices strong objection to the expression "open source" or "FOSS" (free and open-source software). As far as he's concerned, theproper term is "free software", which does not in fact exclude software that costs money. As clearly stated on Stallman's Free Software Foundation web site: Free software is a matter of liberty not price. You should think of "free" as in "free speech".
One thing is for sure - Richard M. Stallman is one of the "big names" that made free software possible, right up there with Linus Torvalds and the pizza delivery guy. Thus, it was with great pleasure that we (Ladislav and Robert) learned that RMS was coming to Taipei on 25 May to deliver one of his famous lectures. In keeping with the GNU tradition, admission to the lecture was free, though donations (to the Free Software Foundation) were to be gratefully accepted.
RMS did not disappoint! His well-rehearsed act is not only highly informative, but downright entertaining. He is, in fact, quite a comedian, while at the same time dealing with a topic that is technical, important, and deadly serious.
The lecture was officially billed as Free Software in Ethics and in Practice, though in fact RMS touched on a wide variety of topics during his two-hour speech. He started out by giving a rough definition of free software as "software that respects the freedom of the user". He then spelled out what he called the "four freedoms" which, in true programmer's fashion, he numbered starting from zero:
- Freedom Zero - the freedom to run the program for any purpose, any way you like.
- Freedom One - the freedom to help yourself by changing the program to suit your needs.
- Freedom Two - the freedom to help your neighbour by distributing copies of the program.
- Freedom Three - the freedom to help build your community by publishing an improved version of the program so that others can gain the benefit of your work.
He then elaborated on these points. Freedom Zero would seem to be a no-brainer. Even proprietary software allows you to run it as you like, right? Actually, not necessarily. More and more, we are seeing programs which - if you bother to read the fine print before you click on "I agree" - impose restrictions on the user. Windows XP, for example, insists on "product activation" which is tied to the hardware - change your motherboard, and it might stop working. Or consider Oracle, popular database software which is licensed "per processor" - buy one copy, install it on a dual-processor machine and you will be in violation of your licensing terms. There are other proprietary programs which expire after a certain date, or can only be run a limited number of times, or are deliberately crippled in some other way (you might as well call it "crippleware").
Freedom One allows you to change the source code. This could be to fix a bug, change the default language of the interface, or port the program to a different hardware architecture. Even if you're not a programmer, somebody could help you make such modifications. However, with proprietary software, you don't even get to see the source code, let alone have the legal right to modify it.
Freedom Two is the right to help your friends and neighbours by distributing copies of the programs you use. With proprietary software, this is called "software piracy" and it's a big no-no - you could wind up being sued and/or imprisoned for doing this.
Freedom Three gives you the right to help the community by modifying programs to make improvements. Literally thousands of GPL-ed programs have been developed this way, including the Linux kernel itself.
After discussing the four basic freedoms, RMS treated us to a little of his personal history. Back in the early days of computing, Stallman and other hackers (as opposed to crackers) gladly shared their programs (including source code) with one another. However, the increasing commercialisation and proprietary nature of software development upset RMS. He was working at MIT (Massachusetts Institute of Technology) when, in 1983, he decided that he wanted to create a free operating system. Fearing that MIT could possibly make copyright claims to any project he was working on while employed by the university, he decided to quit his job in 1984. However, the head of the MIT AI lab, Dr. Winston, graciously allowed RMS to continue using the lab's computers even though he was no longer employed there.
Along with several friends and other contributors, RMS began writing GNU (a recursive acronym for "GNU is not Unix," but also another name for wildebeest). He decided to follow Unix standards because Unix is a very portable operating system - important because there was no way to tell what future hardware architectures would be like. Indeed, the early GNU system was written on a Motorola 68000 computer, vastly different from what most of us use today.
The decision to adopt the Linux kernel in 1992 was done for expediency. The GNU Project planned to replace it with their own kernel known as The Hurd. Although work on The Hurd continues (slowly) to this day, interest has fallen off greatly as the Linux kernel has gained wide acceptance and has improved immensely from its humble beginnings.
During the second hour of the lecture, RMS explained the serious threats to free software. "Our community is big, but it's weak," he explained. "And we have powerful enemies. People don't understand that freedom has to be defended." RMS described in detail the two biggest threats the free software community faces - DRM (with the associated DMCA) and software patents. Stallman, who is a citizen of the USA, had harsh words for the US government, which gave birth to the DMCA and software patents, and has tried to foist them on other countries through "free trade" agreements. One also got the impression that he isn't a fan of Microsoft.
The highlight of the show was when RMS donned his guru robes plus a makeshift halo, and blessed our computers.
After the lecture, 30 minutes were set aside for a question and answer session. Robert asked Mr. Stallman which countries he thought were embracing free software most enthusiastically - he answered that Spain, Italy, Venezuela, Brazil, Argentina and India were particularly bright spots. Ladislav asked about recent proposed changes to the GPL - the changes, which are minor, refer to online distribution of free software and are summed up here.
Nobody asked the classic question, "VI or Emacs?", but Stallman answered it anyway: "Using a free version of VI is not a sin, it's a penance."
* * * * *
New and updated resources for Libranet, Linspire and Slackware
Quality of Linux distributions is measured not only by the stability of the code, but also by the infrastructure behind it - the various community resources and documentation. Last week we were pleased to learn that several distributions and their users were making effort to provide new or updated learning resources, be it printed books or online manuals. One of them is Libranet Basics, a newly-completed comprehensive user guide (with screenshots) to the recently released Libranet GNU/Linux 3.0. The second resource is No Nonsense Guide to Linspire, a printed book that "walks you through all the computing basics and includes a copy of LinspireLive!"; it should be available in a bookstore near you shortly. Finally, The Revised Slackware Book Project has updated its "Slackware Linux Essentials" book to version 2.0; you can view it online or download it in HTML or PDF formats.
|Featured distribution of the week: Libranet GNU/Linux
The Debian project has historically been responsible for creating both hope and despair on the commercial Linux distribution market. Many of you probably remember the high-profile launches of Corel Linux and Storm Linux in the late 90s, two excellent distributions that started out with great hopes that Linux will take the word by storm (pun not intended). Unfortunately, the hopes evaporated with the end of the "dotcom" boom as both distributions were buried in the annals of history - simply because they brought very little revenue for the two companies.
The only Debian-based commercial distribution that survived those tough times was Libranet GNU/Linux. Created in 1999 by Jon and Tal Danzig of the Vancouver-based Libra Computer Systems (which, incidentally, was established back in 1984 as a small UNIX company), the distribution has generated decent following among many Linux users. Although Libranet provides excellent graphical tools for system configuration, it is not intended for your average aunt Tilly; instead, its target market is a more sophisticated Linux user who might be put off by some aspects of Debian proper - such as its often rough and unforgiving mailing list culture.
The long awaited version 3.0 is a major upgrade. Both the installation program and Adminmenu, Libranet's star application, have been given complete and much-needed rewrites, which has turned the distribution into a highly competitive product - with its five CDs worth of applications, Libranet is now competing directly with the likes of SUSE or Mandriva. The latest version of Libranet GNU/Linux comes with an excellent installer that has to be among the best in the industry. The Adminmenu includes, among many other features, a module providing a graphical way of reconfiguring and recompiling the Linux kernel - a feature not seen in any other Linux distribution. Another important advantage of Libranet is its easy upgradeability to a newer version, together with its "save update" archive, a repository of new and upgraded packages that have been tested to work with the latest version of Libranet.
As is always the case with commercial Linux distributions, here comes the million-dollar question: is Libranet worth US$90? Many users who have bought the product believe that they've made the right decision; not only have they received an excellent operating system, they have also become part of a friendly and helpful user community on the distribution's mailing lists and user forums. Still undecided? Then feel free to download and install the older version of Libranet GNU/Linux, and join the Libranet community to see for yourself. You might just find that perfect place to exchange views and help with other like-minded Linux users.
(Disclaimer: Libra Computer Systems is one of the sponsors of DistroWatch.com.)
Libranet GNU/Linux 3.0 - the oldest surviving commercial Linux distribution based on Debian
(full image size: 165kB)
|Released Last Week
Berry Linux 0.58
Berry Linux 0.58 has been released. The most important changes include the following: the Linux kernel has been updated to version 184.108.40.206 (with SMP support, devfs and bootsplash), X.Org to 6.8.2 (with Bold patch), and KDE to 3.4.0; among other upgraded packages are Mozilla, Firefox, K3B, GIMP, Digikam and tvtime; Midnight Commander has been removed; Aqua font, Mikachan font and YOzFont have been added; the live CD now contains wireless networking tools and NdisWrapper. See the complete changelog for more details.
Lunar Linux 1.5.0
A new version of Lunar Linux, a source-based distribution originally forked from the Sorcerer project, has been released: "After being in the cooker for almost half a year the Lunar-Linux Team is happy to announce the release of the latest install ISO: 'Indium Phosphide'. This ISO marks a radical change in the development of Lunar install ISOs and should be far easier and faster to install for everyone. This release provides the following features: i686-optimized, so no need to do a rebuild after installation; fast installer, typically install time can be as fast as 10 minutes on an average P4; precompiled all-purpose kernels for several applications; seamless LILO and GRUB install into the MBR...." Find more details in the release announcement.
The Monoppix live CD has been upgraded to version 1.0.6: "Stack upgrade release of Monoppix version 1.0.6. What's new in this release: Monodoc, mcs, Mono, libgdiplus, gtk-sharp 1.06; Xsp 1.0.8; Monodevelop 0.51; Cairo 0.2; included DotNetSamples document; improved desktop links." See the project's news page for more information.
StartCom Enterprise Linux 4.0.0 (x86_64)
The first StartCom Enterprise Linux for AMD64 processors has been released: "Based on StartCom Enterprise Linux 4.0.0, this release is compiled for and geared to run on these 64-bit register processors... Roughly four fifths of all applications, including the kernel, are ported and compiled for 64-bit computing and provides two runtime library sets - one for 32 bit and one for 64 bit. Most server applications will run in native 64-bit mode, while some desktop applications will still rely on the 32-bit legacy mode. This release also allows for the development of both modes by providing various backward library sets and compilers." Read the release announcement.
SLAX 5.0.5 Popcorn Edition
A special modification of the SLAX live CD, Popcorn Edition, has been released after a week of beta testing. From the changelog: "Initial release of SLAX Popcorn edition, a 124MB live CD with the XFce desktop; contains Mozilla Firefox and Thunderbird, XMMS clone, Gaim and AbiWord; doesn't contain hard disk installer yet, but can be installed manually". MPlayer is also included to play videos and to listen to Internet radio.
A new version of aLinux, formerly known as Peanut Linux, has been released. From the release announcement: "Say you are surfing the net as we all do at some point, come across WMV, M3U, DiVX, etc... aLinux 12.3 has been even more so expanded and perfected upon to play all the media you may click-on, including TV broadcasts, Quicktime, Real Player, Windows Media, Shockwave, DVD vob, Winamp movies/music, etc... We now have the ultimate media experience at our finger tips; aLinux now plays everything inside your fully tabbed web browser making it a simple and unique concept with many thanks to the KDE team, MPlayer, XMMS and others contributing their efforts to the Linux desktop." Find more info on the distribution's home page.
Kaella, a French Linux live CD based on KNOPPIX, has been upgraded to version 2.0.1. This version has been synchronised with the recently released KNOPPIX 3.8.2, and includes the following additional changes: fixed the sagemlive script and added a connection script to the KNOPPIX menu; added source packages to the sources.list file; removed and added some applications; translated the start-up interface into French; personalised the graphical environment; added more French documentation; other changes and bug fixes. More information is available in the release announcement and release notes (both links in French).
* * * * *
Development and unannounced releases
|Upcoming Releases and Announcements
Debian GNU/Linux 3.0r6 "Woody"
The latest issue of Debian Weekly News informs about the 6th and final revision of Debian GNU/Linux 3.0 "Woody": "Joey Schulze sent in the preparation for the last update to Debian 3.0. As usual, this mostly adds recent security updates to the woody release. He also explained that there can't be another update after the release of sarge due to deficiencies in the archive suite." More details are available on this page.
Debian GNU/Linux 3.1 "Sarge"
There has been a slight delay in the release of Debian GNU/Linux 3.1 "Sarge", originally planned for today (30 May), but which is now expected on 6 June: "Well, just in case it wasn't obvious to everyone from looking at the release-critical bug stats, we should probably come out and say it: the count of release critical issues affecting sarge is still going down, but it's not yet down to zero, which means no release this weekend. But we are *very* close, so we're only pushing the schedule back a week and aiming for a release next weekend." Find more information in this mailing list post.
* * * * *
Summary of expected upcoming releases
|Web Site News
Call for package list update
As has become the tradition on this web site, June is the month when we update the list of tracked packages on DistroWatch. As always, the decision is yours - if you'd like to see a particular package tracked, please mention it in the forum below or send us an email (you can find the email address at the bottom of this page). We will count the votes and the most often requested packages will be considered for being included in the distribution tables. Of course, many readers have emailed us already and here is the current list of packages that will likely be included in this round: amarok, curl, sqlite, subversion, udev. Some packages are going to be dropped, the likely candidates include net-tools and sawfish. You can find more information about this process on the tracked packages page.
* * * * *
New distribution additions
No new distributions have been added to DistroWatch last week.
* * * * *
New on the waiting list
- Mono Live. Mono Live is a Linux-based live CD with the Mono Framework and current desktop applications included on the CD. It also contains the files necessary to install Mono on Windows computers.
* * * * *
DistroWatch database summary
- Number of Linux distributions in the database: 408
- Number of BSD distributions in the database: 11
- Number of discontinued distributions: 52
- Number of distributions on the waiting list: 117
* * * * *
That's all for today. We hope that you enjoyed this week's DistroWatch Weekly!
If you've enjoyed this week's issue of DistroWatch Weekly, please consider sending us a tip.
(Tips this week: 0, value: US$0.00)
|• Issue 679 (2016-09-19): OpenMandriva 3.0, 32-bit vs 64-bit performance, openSUSE updates, KaOS unveils first run wizard|
|• Issue 678 (2016-09-12): Apricity 07.2016, Mageia adopts DNF, KDE neon to use Wayland, FreeBSD updates Linux compatibility, creating cron jobs|
|• Issue 677 (2016-09-05): Peppermint OS 7, Manjaro updates leadership, TrueOS becomes rolling release, organizing files, creating torrents|
|• Issue 676 (2016-08-29): Korora 24, Fedora 25 to use Wayland by default, Linux turns 25, PC-BSD becomes TrueOS, finding software licensing information|
|• Issue 675 (2016-08-22): Gentoo LiveDVD "Choice Edition", moreutils, Ubuntu improves terminal convergence, MATE packaged for Openindiana, FreeBSD improves video support|
|• Issue 674 (2016-08-15): Zenwalk Linux 8.0, Ubuntu phone follow-up, Lubuntu transitioning to LXQt, Steam running on FreeBSD|
|• Issue 673 (2016-08-03): noop linux and EasyNAS, Debian's GnuPG switch, Fedora "Flock", using "nice"|
|• Issue 672 (2016-08-01): Ubuntu Phone 15.04, Solus embraces rolling release model, interview with Jane Silber, FreeBSD Quarterly Report|
|• Issue 671 (2016-07-25): Slackware 14.2, Point Linux 3.2, OpenBSD disables usermount, KaOS releases significant changes, Fedora 22 reaches end of life.|
|• Issue 670 (2016-07-18): Linux Lite 3.0, Bodhi team plans 4.0.0, pfSense changes licensing, running software across distributions, Linux Mint upgrade path|
|• Issue 669 (2016-07-11): Linux Mint 18, proving a system is secure, LibreSSL in FreeBSD, Ubuntu plans phasing out 32-bit, pfSense status report|
|• Issue 668 (2016-07-04): Fedora 24, Linux Mint plans for 18.1, FreeBSD and DragonFly BSD improve their file systems, comparing Flatpak, Snap and AppImage|
|• Issue 667 (2016-06-27): GeckoLinux 421, Fedora supports Flatpak, Solus unveils new features, running GNU/Linux on tablets|
|• Issue 666 (2016-06-20): Comparing more live update methods, Ubuntu's snap packages, Antergos drops 32-bit media, GeckoLinux unveils Rolling edition, learning Linux resources|
|• Issue 665 (2016-06-13): BunsenLabs Linux Hydrogen, Fedora 24 delayed, NetBSD grows in size, Clonezilla questions|
|• Issue 664 (2016-06-06): Sabayon 16.05, Debian updates install media, the cost of free software, Qubes explains secure build process|
|• Issue 663 (2016-05-30): Comparing live update methods, Ubuntu MATE's progress, distros debate systemd change, DistroWatch turns 15|
|• Issue 662 (2016-05-23): Clonezilla Live, new Fedora community repository, DragonFlyBSD runs Wayland, a live edition of Slackware and kernel components|
|• Issue 661 (2016-05-16): FreeBSD 10.3, OpenMandriva adopts Clang, Debian adds ZFS packages, PCLinuxOS drops 32-bit and comparing CentOS with RHEL|
|• Issue 660 (2016-05-09): Ubuntu MATE 16.04, Mint's xapps, FreeBSD Quarterly Report, Debian updates 32-bit support, addressing GPL violations|
|• Issue 659 (2016-05-02): Ubuntu 16.04, compiling custom kernels, Cinnamon 3.0, Sabayon launches ARM build, Devuan ships Beta release|
|• Issue 658 (2016-04-25): Kali Linux 2016.1, elementary OS 0.3.2, Debian elects Project Leader, Fedora 24 feature preview, Nard reaches 1.0|
|• Issue 657 (2016-04-18): Redox, Linux Mint improves update manager, planned Fedora 24 features, Ubuntu 16.04 getting Snappy packages|
|• Issue 656 (2016-04-11): Qubes OS 3.1, Whonix offers bug bounties, Puppy's family tree, setting up disk partitions and running bash on Windows|
|• Issue 655 (2016-04-04): Parsix 8.5, Sabayon's Community repository, Red Hat offers free subscriptions, Ubuntu tablets, command line tips|
|• Issue 654 (2016-03-28): PCLinuxOS 2016.03, Using signatures to create a web of trust, Arch Linux rolls out Pacman update, GuixSD packages GNOME|
|• Issue 653 (2016-03-21): Antergos 2016.02.21, Debian prepares for election, a Unix-like OS written in Rust, watching Netflix on FreeBSD|
|• Issue 652 (2016-03-14): ReactOS 0.4.0, Debian swaps Iceweasel for Firefox, Fedora moving forward with Wayland, Verifying ISO files|
|• Issue 651 (2016-03-07): Korora 23, Linux Mint improves security, Ubuntu MATE on Raspberry Pi 3 computers, trying different file systems|
|• Issue 650 (2016-02-29): Haiku in 2016, running Android apps on GNU/Linux, 30 years of MINIX, Fedora plans Atomic Workstation|
|• Issue 649 (2016-02-22): Zorin OS 11, openSUSE launches new editions, Linux Mint website compromised, sandboxing applications using Firejail|
|• Issue 648 (2016-02-15): XStream Desktop 153, Raspbian unveils OpenGL feature, free hardware, Ikey Doherty talks desktop design|
|• Issue 647 (2016-02-08): Tails 2.0, KDE project launches Neon, Manjaro unveils ARM support, FreeBSD's quarterly report|
|• Issue 646 (2016-02-01): deepin 15, Mint plans X-Apps, FreeBSD to support boot environments, logging into the desktop as root|
|• Issue 645 (2016-01-25): Linux Mint 17.3 "Xfce", Chromixium changes its name, Ubuntu tablets coming soon, Linux vs BSD comparision|
|• Issue 644 (2016-01-18): Kwort 4.3, Sabayon tests ARM images, Slackware adopts PulseAudio, running Linux without GNU software|
|• Issue 643 (2016-01-11): Solus 1.0, Mint provide upgrade path to 17.3, Fedora developers work on stability, running the LXQt desktop|
|• Issue 642 (2016-01-04): paldo GNU/Linux, vetting distro repositories, Fedora plans to adopt GCC 6, Ian Murdock passes|
|• Issue 641 (2015-12-21): Arch Linux, Qubes OS to ship on Librem laptops, ALT offers start kit images, the spread of systemd and launchd|
|• Issue 640 (2015-12-14): Chakra GNU/Linux 2015.11, removing meta-data from files, Ubuntu to remove on-line dash searches|
|• Issue 639 (2015-12-07): OpenBSD 5.8, openSUSE gathers Summer of Code proposals, running WINE on a live disc, Enlightenment adds Wayland support|
|• Issue 638 (2015-11-30): Qubes OS 3.0, KaOS with Plasma, NetBSD 7.0, Fedora seeks Wayland testers, scheduling tasks|
|• Issue 637 (2015-11-23): NixOS 15.09, Antergos introduces ZFS support, MINIX shares new features, copying an OS to a new computer|
|• Issue 636 (2015-11-16): openSUSE 42.1, Fedora uses Wayland by default, Debian replaces live CD project, Steam consoles launch|
|• Issue 635 (2015-11-09): Fedora 23, Cinnamon 2.8 released, a Fedora KDE packager quits, Red Hat signs deal with Microsoft|
|• Issue 634 (2015-11-02): Ubuntu 15.10, Chakra upgrades to Plasma 5, OpenMandriva plans new editions, MINIX plans conference|
|• Issue 633 (2015-10-26): GhostBSD 10.1, Bodhi Linux to get new settings panel, Fedora 23 delayed, creating live image of existing OS|
|• Issue 632 (2015-10-19): Linux Lite 2.6, 32-bit build of CentOS, OpenBSD turns 20, Bodhi Linux releases AppPack|
|• Issue 631 (2015-10-12): Parsix 8.0, Manjaro seeks new artwork, sending commands to multiple servers, Debian drops LSB support|
|• Issue 630 (2015-10-05): Android-x86 4.4-r3, Ubuntu's new installer, Raspbian defaults to GUI interface, cleaning out dot files|
|• Issue 629 (2015-09-28): Open source desktops and touch interfaces, locking down user accounts, OpenMandriva opens gaming documentation|
|• Issue 628 (2015-09-21): Neptune 4.4, changes to pfSense, Pinguy OS releases updated ISO images, accessing hard disk images|
|• Issue 627 (2015-09-14): Mageia 5, Snappy co-exists with Debian packages, creating PDF/A documents, Antergos previews Poodle|
|• Full list of all issues|
|Free Tech Guides
NEW! Apache Tomcat Cookbook
NEW! Apache Tomcat is an open-source web server that implements several Java EE specifications including Java Servlet, JavaServer Pages (JSP), Java EL and WebSocket.
FREE 94-page Cookbook
|Free Tech Guides
NEW! Java Design Patterns
NEW! Delve into the world of Java Design Patterns with this compact guide that introduces design patterns for the Java programming language.
FREE 183-page Guide