| DistroWatch Weekly
|DistroWatch Weekly, Issue 269, 8 September 2008
Welcome to this year's 36th issue of DistroWatch Weekly! This week's feature story is a review of Debian GNU/Linux 5.0 "Lenny" on the ASUS Eee PC. With Debian being the first Linux distribution to have an open communication channel with the Taiwan-based hardware manufacturer, our expectations were high, but is Lenny really a good choice for the popular ultra-portable? Read on to find out. In the news section, Google restarts the browser war with Chrome, Dell unveils the long-awaited Inspiron Mini 9, Mandriva Linux 2009 enters the release candidate stage, and Fedora calls on beta testers to help with testing the promising ext4 file system. Also worth a mention, a new community edition of openSUSE 11.0 with Enlightenment as its principal window manager is now available for download. Finally, a lot of interesting news for the fans of Linux Mint as Clement Lefebvre announces a range of upcoming community editions before giving an excellent interview on a Linux news blog. Happy reading!
Listen to the Podcast edition of this week's DistroWatch Weekly in ogg (9.6MB) and mp3 (9.6MB) formats (many thanks to Russ Wenner)
Join us at irc.freenode.net #distrowatch
Debian GNU/Linux 5.0 on ASUS Eee PC 900
In June 2008, the Debian project announced that it had started a cooperation project with ASUS in order to bring full support for the company's Eee PC to Debian. It had set up a Debian Eee PC page on the distribution's Wiki and has since released an installation image based on Debian's upcoming release - version 5.0 and code name "Lenny". While many other distributions have announced support for the Eee PC and released various CD and USB images claiming full or partial support for the popular netbook, Debian was the first project with an active communication channel between a Linux distribution and the Taiwan-based hardware manufacturer. So how does Debian GNU/Linux fare on the ASUS Eee PC some three months later?
First, I was curious to see whether any Eee PC support was being integrated into the mainstream Debian GNU/Linux 5.0. To test this, I downloaded the recently released Debian Live, another Debian's sub-project that promises to deliver a set of live Lenny images for those who prefer to install their distribution from a live CD, DVD or USB media. I used the live USB image, which I transferred to a 4 GB USB key in order to boot the ASUS Eee PC 900. While the boot process went well and the system came up with a working sound and correct screen resolution, neither the wired, nor the wireless network was active. As I discovered later, the kernel modules of the two network devices were not available on the stock Debian Lenny system and while it was possible to download the required modules from ASUS's web site, the lack of any development tools on the live media meant that it was not possible to compile them. That brought an end to my experimentation with Debian Live, which clearly is nowhere near ready for the Eee PC.
Next, I downloaded the 16 MB custom Debian USB image specifically designed for the Eee PC. My plan was to use an external SD card to boot the image, then install it to an external USB storage device, leaving the internal Solid State Drives (SSD) unmodified. This worked well; I used one of those SD card USB adapters to write the Debian Eee PC image to it:
dd if=debian-eeepc_20080729.img oflag=direct of=/dev/sdc
The installation went without a hitch. After I booted the machine from the external SD card (/dev/sdd), the system correctly detected the two internal solid state disks (the 4 GB disk as /dev/sda and the 16 GB one as /dev/sdb), and asked where to install the system. I chose the 4 GB external USB drive (/dev/sdc). The installer also asked which network adapter I preferred to use for system installation - the options were eth0 (Attansic Technology Corp. L2 100 Mbit Ethernet Adapter) or the wireless ath0 (Atheros Communications Inc. AR242x 802.11abg Wireless PCI E). I chose the latter, then confirmed all the remaining options and went to get myself a cup of coffee. By the time the installer finished I could have had a dozen as installing the system to the external USB drive turned out to be a very lengthy process - it took more than four hours! And it definitely wasn't due to the slow download of packages over the network.
However, before rebooting the system, it was necessary to manually make some changes to the /etc/fstab and /boot/grub/menu.lst - the details are available here. If you are planning to follow these instructions, then one more warning - different models of Eee PC require a different set of changes so pay close attention to the note in the "Fixing GRUB configuration and /etc/fstab" chapter of the above page. In any case, if you reboot before making the required changes to these files, it is possible to fix them by mounting the USB drive on another computer.
First boot after installation. Once again, the sound and screen resolutions were correct, but still no networking. Even though the entire installation was performed over the wireless network, once booted into the newly installed system, the ifconfig command revealed that there was no device named ath0 and no kernel module corresponding to it. As I was to find out, to get the wireless network up, it was necessary to install the MadWifi package (the instructions are here). Luckily, the eth0 network interface worked as a "hotplug", so as soon as I plugged in the network cable, the system was all set up for some serious apt-get action. Installing MadWifi worked fine and soon I was able to surf the Internet from the balcony.
However, there were a few glitches. While having to do all the extra manual work, such as configuring GRUB and installing MadWifi, was unexpected from a system that claimed to provide support the Eee PC, more disappointments followed. Firstly, the network applet (nm-applet 0.6.6) present by default in the GNOME panel only registered the wired network, so if connected through the wireless one, it claimed "no networking" available. Secondly, the battery applet also gave an error, something to the effect of having only 1% of battery power. And the package update applet claimed that there were two updates ready for the system, but after launching the Update Manager, I was told that "your system is up-to-date" (see screenshot below). Some of these problems were the result of a recent kernel upgrade in Debian, which brought a new set of bugs and for which there are some known workarounds. So even though the system is usable in this state, those wanting a more authentic Eee PC experience with Debian need to be prepared to do much manual work on the command line.
Debian GNU/Linux 5.0 on an Eee PC - not a smooth experience
(full image size: 137kB, screen resolution: 1280x1024 pixels)
Despite all the trouble that makes Lenny on the Eee PC somewhat hard to install and use at this stage, the good news is that the Debian Eee PC team continues to work on the existing issues. As I started typing this report, I noticed a new Eee PC image released just yesterday (Sunday). Labelled as debian-eeepc_20080907.img, it didn't take long before it found itself on the external SD card for the repeat of the 4+-hour installation process to see if anything has improved. Unfortunately, the same problems showed up again - the "broken battery" error, no wireless network, and the package update issues were still very much present in the new image.
Conclusions? The Debian Eee PC team has made it possible to run Debian Lenny on the ultra-portable, all right. All it takes is a bit of command-line work, some module compilation, and a few workarounds here and there and it will work - thanks also to the excellent documentation on the Debian Wiki pages. But the entire experience isn't particularly positive. Firstly, it's clear that, unlike Mandriva, Debian has not integrated the work done by its Eee PC team into the main Debian kernel. Secondly, getting Debian work on the Eee PC requires many unnecessary steps. If the installer has support for the Atheros wireless network card, why is it not available in the installed product? And if the installer is capable of detecting the installation target, why is it necessary to modify some critical system files after the installation is completed?
At the end of the day, it's obvious that Debian's support for the Eee PC is still very much work in progress. Until this work is completed, there are better distributions to run on the little laptop.
Google Chrome, Dell Inspiron Mini 9, Mandriva Linux 2009 RC1, Fedora update status and ext4 testing, openSUSE with Enlightenment, interview with Clement Lefebvre
The two big stories of the week that occupied the pages of many Linux web sites were the release of Google Chrome, a new web browser built by the world's largest search engine, and the announcement about the Dell Inspiron Mini 9, a new entry into the world of ultra-portables or "netbooks", as some prefer to call them. Disappointingly, none of them is ready for Linux users - Google Chrome is currently Windows-only (although support for Linux and Mac OS X is reportedly forthcoming) and the Mini 9 too is Windows-only at the moment (with the Ubuntu flavour promised to start shipping shortly). Still, most of those who tried Google's new software were highly impressed, while most of the reviewers lucky enough to be able to test the US$350 Dell laptop were also rather positive about the hardware. If you are interested to find out more, here is a good interview with John New, the Dell Inspiron Mini 9 product manager.
* * * * *
On the distribution front, Mandriva has entered the final testing period last week with the first release candidate of Mandriva Linux 2009. The release looks good, with the new KDE 4.1.1 as the default desktop (KDE 3.5.10 is available from online repositories) and several new features, such as the redesigned system installer, automatic repository configuration and mirror selection in Rpmdrake, and further integration of the official Mandriva theme and artwork. But Mandriva also warns that upgrading from version 2008 to the current release candidate is not recommended: "There are unresolved issues with KDE which are likely to result in any system upgraded from any stable release to this beta being unable to start a desktop, rendering it useless for most people. Please only use this beta as a clean installation, and, as always, do not expect to be able to use it as a day-to-day workstation; keep an installation of a stable Mandriva release for this purpose."
Mandriva Linux 2009 RC1 - the brand new desktop look and feel
(full image size: 348kB, screen resolution: 1280x1024 pixels)
* * * * *
Following the recent compromise of the Fedora download servers, Jesse Keating has published an update on the status of package updates for Fedora's versions 8 and 9: "As you well know, we have been working hard to get updates for 8 and 9 flowing again, complete with new package signing keys. Discussion has been somewhat quiet on this front as we've all had our heads down and have been working hard toward a solution, one that involves little to no manual effort on behalf of our users. Today we've reached a major milestone in this progress. We have done a successful compose of all the existing and pending updates for Fedora 8 and Fedora 9, all signed with our new keys. These updates will soon hit mirrors in a new set of directory locations. What we don't have quite yet is the updated fedora-release package in the old updates location that will get you the new keys and the new repo locations. The last mile testing of this update requires that new updates be live on the mirrors."
In the meantime, the development of Fedora 10 continues with testing of the various features that will eventually appear in the distribution. One of them is support for ext4, a new journaling file system that is a successor to the widely-used ext3. Last week, Eric Sandeen issued a call for testing: "Just my semi-annual plea for some ext4 testing in the Fedora beta cycle. With the e2fsprogs 1.41.0 release in Fedora 10, we now have an ext4-capable e2fsprogs, with working fsck, debugfs, etc as well as mkfs.ext4 and mkfs.ext4dev to enable the new disk format features by default. For Fedora 10, the barrier to entry has been lowered by 14 characters - now all you have to type on the boot prompt is "ext4" and when you go to the custom partitioning screen, you'll get the option to create ext4 file systems at install time. I'd appreciate any and all testing, benchmarking and feedback that people would be willing to do. Just getting more exposure in real-life scenarios would be great."
* * * * *
How would you like to run an openSUSE 11.0 with Enlightenment as its principal desktop? If you are interested, here is the good news, courtesy of Dmitry Serpokryl: "Glad to announce the release of Enlightenment live CD based on openSUSE 11.0. The main purpose of this disk was to bring the cutting edge SVN code of Enlightenment to your desktop. We tried to pick the best software and make some tiny adjustments to save your time and deliver the best out-of-the-box experience. The main concept is to provide a relatively small, fast, stable, secure and 'transparent' distribution for users. Enlightenment DR17 desktop shell (E17) along with the EFL (Enlightenment Foundation Libraries) applications aimed to be the major environment. Enlightenment DR16 (E16) is used as the default window manager. IceWM is provided for those who can't live without the panel located in the bottom of the screen and the Start button in the lower left corner. TWM is for deep meditation in the dark. Selected programs proven to be the best in their area are included in the base distribution set." Here is a quick download link to the live CD: suse-11.0-live-iso.i686-2.5.1.iso (682MB, login: linux, password: soad).
openSUSE 11.0 with Enlightenment 17 - great theme, sexy effects
(full image size: 989kB, screen resolution: 1280x1024 pixels)
* * * * *
Finally, a link to a nice interview with Clement Lefebvre, the founder and lead developer of Linux Mint: "Q: Where will Linux Mint go from here on? A: Up :) The Windows market will slowly shrink and Linux Mint will remain among the most successful distributions. The more people are aware of the choice they have the more they'll start using Linux and I can see a snowball effect has already started. I don't know if Linux Mint will become as popular as say Debian or Ubuntu within the Linux market but it surely will get its fair share of new users when people start migrating from Windows. As for us we'll continue to do what we do best, improve what we have, innovate and gather our users' feedback."
|Released Last Week
Lucas Holt has announced the release of MidnightBSD 0.2.1, a FreeBSD derivative with the goal of creating a BSD with ease of use and simplicity in mind: "MidnightBSD 0.2.1 has been released. This version focused on adding hardware for newer devices including ATI, NVIDIA and Intel SATA controllers, and wireless support standard. A great deal of work was put into creating packages with over 2,000 packages available on our FTP server. The new release includes two CDs of packages plus X11 on disc1. Other software updated: GCC 3.4.6, BIND 9.4.2-p1, Sendmail, bzip2, OpenSSH 5.0p1, PCC compiler added (i386), removal of GNU cpio for BSD licensed version, cpdup added, IPv6 fixes, mksh added. Users who install KDE from the ISOs will be able to enable graphical login on boot-up. A script now runs on the first boot asking to enable BSDStats and 'graphical desktop environment'." See the full release announcement for additional details.
Scientific Linux 4.7
Troy Dawson has announced the release of Scientific Linux 4.7, an updated build of the project's legacy version based on Red Hat Enterprise Linux (RHEL) 4: "Scientific Linux 4.7 has been released. It doesn't have any exciting new features, it is just a nice, stable release. Scientific Linux release 4.7 is based on the rebuilding of RPMs out of SRPMs from Enterprise 4, including Update 7. It also includes all errata and bug fixes up until September 03, 2008." Scientific Linux enhances the standard RHEL with a number of applications, including a cluster suite, the FUSE file system, IceWM window manager, Intel wireless firmware, Java, MadWifi, OpenAFS file system and others. For more information please see the release announcement and read the comprehensive release notes.
BOSS GNU/Linux 3.0
BOSS GNU/Linux is a Debian-based GNU/Linux desktop distributions developed in India, supporting a number of Indian languages. Yesterday a new major version was announced on the project's web site: "Centre for Development of Advanced Computing (C-DAC) has launched its Bharat Operating Systems Solutions (BOSS) GNU/Linux software version 3.0, developed by NRCFOSS (National Resource Centre for Free/Open Source Software). BOSS version 3.0 is coupled with GNOME and KDE desktop environments with a wide Indian language support and packages that are relevant for use in the government domain. The software is also endowed with Bluetooth for short range of communications along with salient features like RSS feed reader and PDF viewer. The objective of creating BOSS Linux is to enable the non-English speaking people of India to be exposed to the benefits of free and open source software and GNU/Linux." Here is the complete press release.
SystemRescueCd 1.1.0, a major new version of the popular hard disk partitioning and data rescue live CD, has been released. What's new? "New features introduced in SystemRescueCd-1.1.0: advanced customization - you can now install new packages to SystemRescueCd by doing an advanced customization; kernel recompilation - there is new documentation about building a customized SystemRescueCd with your own kernel; backstore - this tool allows you to keep your changes when you reboot SystemRescueCd; nameif - this tool allows you to specify the name of each Ethernet interface using the Mac address; rsync tutorial - new documentation about how to use rsync; added development tools (GCC, make) and Gentoo tools (emerge, equery); ability to install your own packages using the Gentoo commands (emerge)..." These are just some of the most interesting changes, but there are many more, please read the full changelog for additional details.
SystemRescueCd 1.1.0 uses the JWM window manager at the desktop level.
(full image size: 60kB, screen resolution: 1280x1024 pixels)
* * * * *
Development, unannounced and minor bug-fix releases
|Upcoming Releases and Announcements
The OpenBSD project has published a page dedicated to its upcoming release, version 4.4, scheduled for 1 November 2008. The new version will have improved hardware support, several new tools, new functionality in existing utilities, code clean-up, OpenSSH 5.1, and the usual range of included software packages, such as GNOME 2.20.3, KDE 3.5.8, Firefox 3.0.1 and OpenOffice.org 2.4.1. For more information please see the OpenBSD 4.4 page. The release is already available for pre-order (C$50.00).
Linux Mint 5 Community editions
The Linux Mint project has published an update on the various community editions that are currently being completed. The first ones, the Xfce and Fluxbox editions, will arrive later this week, while the KDE edition is expected to arrive as soon as the last glitch is fixed. From the announcement: "Xfce CE (stable) will be released early next week; Fluxbox CE (RC) will be released before the next weekend; KDE CE RC1 was close to being stable, there's a tiny little glitch with xdg-user-dirs which I want to fix so technically the final ISO will be different but if you're running KDE CE RC1 you don't need to wait for the final release; work on the x86_64 edition is on hold for a few days; there won't be any time dedicated to the Debian and Enterprise editions before Mint 6 is out; Main and Light (which will become 'Universal' and will come with language packs) will have a new revision to include the new Firefox, Flash 10 (when it's stable), and the latest versions of the mint tools."
Linux Mint 5 "Xfce" edition - the default desktop showing the mintConfig control centre
(full image size: 440kB, screen resolution: 1280x1024 pixels)
* * * * *
Summary of expected upcoming releases
Possible site downtime|
DistroWatch.com might become unavailable for brief periods of time later this week. The hard disk carrying the web site has being showing some early warning signs of deterioration, so it's time for a replacement. Tomorrow (Tuesday), the web site will be temporarily migrated to a virtual server (with a new IP address), so that the hard disk can be re-imaged and replaced. With luck, you won't notice any downtime, but if DistroWatch.com happens to be inaccessible, please remember that there are several mirrors in the USA and Europe (e.g. distrowatch.serve-you.net, more are listed at the bottom of this page), so you might want to bookmark one of those.
* * * * *
New distributions added to database
* * * * *
New distributions added to waiting list
* * * * *
DistroWatch database summary
* * * * *
And this concludes the latest issue of DistroWatch Weekly. The next instalment will be published on Monday, 15 September 2008. Until next week,
|• Issue 588 (2014-12-08): PC-BSD 10.2, rolling-release Ubuntu GNOME, Bitrig, systemd|
|• Issue 587 (2014-12-01): Trisquel 7.0, Kubuntu 14.10 "Plasma5", FreeBSD on 64-bit ARM, Jolla and UbuTab|
|• Issue 586 (2014-11-24): Scientific Linux 7.0, Debian and systemd, Ubuntu MATE, application-level firewalls|
|• Issue 585 (2014-11-17): openSUSE 13.2, PC-BSD's "roles", MATE + Compiz on Mint, cleaning package cache|
|• Issue 584 (2014-11-10): OpenMandriva 2014.1, Debian freeze, trickle, systemd and boot times|
|• Issue 583 (2014-11-03): Ubuntu 14.10, ownCloud, Kylin interview, The Book of PF, Elive's commercial ways|
|• Issue 582 (2014-10-27): GhostBSD 4.0, Tumbleweed and Factory merge, systemd and fork of Debian|
|• Issue 581 (2014-10-20): SparkyLinux 3.5, Fedora's graphics stack, Debian and systemd, OpenBSD 5.6|
|• Issue 580 (2014-10-13): Rolling releases, Arch as best distro, GNOME on Wayland, MINIX 3.3.0|
|• Issue 579 (2014-10-06): PC-BSD 10.0.3, Debian's Jessie freeze, setting up home server|
|• Issue 578 (2014-09-29): Calculate 14, Debian's default desktop, Shellshock vulnerability, practical Tiny Core|
|• Issue 577 (2014-09-22): SymphonyOS 14.1, FreeBSD drops pkg_add, MINIX on ARM, GNU screen|
|• Issue 576 (2014-09-15): PCLinuxOS 2014.08, Mint's documentation, Debian's hardware database, CDE|
|• Issue 575 (2014-09-08): Porteus 3.0.1, Fedora's blivet-gui, Red Hat's Docker, systemd|
|• Issue 574 (2014-09-01): Ubuntu Kylin 14.04, Haiku and Linux kernel, Wayland support, Lumina, Bash completion|
|• Issue 573 (2014-08-25): SolydXK 201407, VPN gateway with FreeBSD, Ubuntu MATE, Raspbian, trusting binary packages|
|• Issue 572 (2014-08-18): ZFSguru 10.1, Fedora's Flock, beta installer for "Jessie", Ubuntu Core, rolling releases|
|• Issue 571 (2014-08-11): HandyLinux 1.6, LMDE update, default desktop in "Jessie", running out of disk space|
|• Issue 570 (2014-08-04): Neptune 4, Kubuntu's KDE Plasma 5, FreeBSD and UEFI, Linux servers|
|• Issue 569 (2014-07-28): Deepin 2014, Ask Fedora, Gentoo and LibreSSL, encrypted package downloads|
|• Issue 568 (2014-07-21): Antergos 2014.06.24, Mint based on Debian stable, upgrading CentOS, BinaryTides|
|• Issue 567 (2014-07-14): Manjaro 0.8.10, PC-BSD jails, Debian and glibc, Fedora's DNF, Xiki and Opera 24|
|• Issue 566 (2014-07-07): LXLE 14.04, OpenBSD's SimpleDE, openSUSE artwork, home security basics|
|• Issue 565 (2014-06-30): Chakra 2014.05, Fedora on BeagleBone, Matthew Miller interview, e-book readers|
|• Issue 564 (2014-06-23): Antergos 2014.05.26 and Q4OS 0.5.11, Debian LTS and glibc, Fedora DNF|
|• Issue 563 (2014-06-16): Mint 17, CentOS 7 pre-release, Debian MATE, accessing encrypted content|
|• Issue 562 (2014-06-09): GoboLinux 015, Gentoo interview, Fedora leader change, climagic tricks|
|• Issue 561 (2014-06-02): OpenMandriva 2014.0, Debian GNU/Hurd, Lubuntu and LXQt, Final Term, TrueCrypt|
|• Issue 560 (2014-05-26): KaOS 2014.04, Wayland and KDE 5 on Fedora, distros with commercial support, DenyHosts|
|• Issue 559 (2014-05-19): VortexBox 2.3, LTS-only Linux Mint, FreeBSD 11 ambitions, KDE 5 beta|
|• Issue 558 (2014-05-12): RHEL 7 Workstation impressions, LXQt and Lumina, Haiku interview|
|• Issue 557 (2014-05-05): Xubuntu 14.04, Ubuntu 14.10 roadmap, Fedora Workstation, ownCloud|
|• Issue 556 (2014-04-28): Ubuntu 14.04, LibreSSL, Lumina desktop, Deepin interview|
|• Issue 555 (2014-04-21): Robolinux 7.4.2, Ubuntu release day stats, Debian security, Porteus update|
|• Issue 554 (2014-04-14): Review of FreeNAS, OpenSSL bug, Fedora.next, Robolinux Stealth VM, measuring memory|
|• Issue 553 (2014-04-07): Puppy 5.7 "Slacko", end of Ubuntu One, file encryption with GPG|
|• Issue 552 (2014-03-31): Tanglu 1.0, Ubuntu GNOME LTS, SliTaz for ARM|
|• Issue 551 (2014-03-24): Linux Mint "Debian" 201403, call for end to proprietary firmware, LVM|
|• Issue 550 (2014-03-17): Review of NixOS 13.10, Lubuntu seeking feedback, Android-x86 4.4-rc1 impressions|
|• Issue 549 (2014-03-10): ClearOS 6.5 and UCS 3.2, Gentoo interview, Ubuntu app contest, Into the Core|
|• Issue 548 (2014-03-03): Review of Mageia 4, FreeBSD console driver, filtering web content, Pitivi fundraiser|
|• Issue 547 (2014-02-24): Chakra 2014.02, Ubuntu privacy, preventing unwanted remote logins|
|• Issue 546 (2014-02-17): Review of PC-BSD 10.0, Red Flag closure, Ubuntu and systemd, SlackE18, Fedora book review|
|• Issue 545 (2014-02-10): Impressions of FreeBSD 10.0, Debian votes systemd, Ubuntu file manager, server security|
|• Issue 544 (2014-02-03): Netrunner 13.12, openSUSE future, Ubuntu Touch in emulator, running commands in multiple places|
|• Issue 543 (2014-01-27): Review of Korora 20, FreeBSD 10.0, DNF, ZFS rescue CD, Bridge Linux interview|
|• Issue 542 (2014-01-20): QupZilla, Ubuntu with MATE, Arch on Raspberry Pi, best applications|
|• Issue 541 (2014-01-13): openSUSE 13.1 and Zentyal 3.3, CentOS joins Red Hat, Bodhi on Chromebooks|
|• Issue 540 (2014-01-06): SMS 2.0.6 and SME Server 8.0, Hawaii desktop, PHR statistics 2013, more on multi-part archives|
|• Issue 539 (2013-12-23): Centrych 12.04.3, Fedora 20 and its spins, dividing archives across multiple discs|
|• Issue 538 (2013-12-16): Mint 16 review, RHEL and CentOS 7 plans, SteamOS, Windows XP replacement suggestions|
|• Issue 537 (2013-12-09): OpenMandriva 2013.0, Gentoo developer interview, project Neon, Linux Mint and security|
|• Issue 536 (2013-12-02): Impressions of openSUSE 13.1, Ubuntu Touch, FreeBSD 10 delay, troubleshooting OS lock-ups|
|• Full list of all issues|
|Free Tech Guides
C/C++ Essential Training
In this FREE video course, Bill Weinman dissects the anatomy of C and C++, from variables to functions and loops, and explores both the C Standard Library and the C++ Standard Template Library.