Start learning with our library of video tutorials taught by experts. Get started
Viewers: in countries Watching now:
Many successful programmers know more than just a computer language. They also know how to think about solving problems. They use "computational thinking": breaking a problem down into segments that lend themselves to technical solutions. Code Clinic is a series of six courses where lynda.com authors solve the same problems using different programming languages. Here, David Powers works with PHP.
Each month, David will introduce a new challenge and provide an overview of his solution in PHP, explaining how he broke the problem up into logical components, and revealing the difficulties he encountered. Challenges will include topics such as statistical analysis, searching directories for images, and accessing peripheral devices.
Visit other courses in the series to see how to solve the exact same challenge in languages like C#, C++, Java, Python, and Ruby. And check back every month for new challenges.
- Hello and welcome to Code Clinic. My name is David Powers. Code Clinic is a monthly course, where a unique problem is introduced to a collection of lynda.com authors. In response, each author creates a solution using their programming language of choice, mine is PHP. You can learn several different things from Code Clinic. Different approaches to solving a problem, the pros and cons of different languages, and some tips and tricks to incorporate into your own coding practices.
This month, the problem combines two concepts: recursion and accessing image data. Recursion means to repeat something in a similar way. In programming, recursion means a function will actually call itself, nesting a call to a subroutine within a call to the same subroutine. You might find this type of code pattern in the code samples you're about to see. Although some languages might have structures that handle recursion automatically.
JPEG files can contain additional image data stored as Exif or IPTC. Exif stands for exchangeable image file format and is a well-documented standard. If you have a digital camera or have taken photos with a newer smartphone, the image probably has Exif data available. IPTC was developed by the International Press Telecommunications Council. The standard was adopted by Adobe Photoshop, and it's widely used by stock photo agencies to embed information about images.
You can see this metadata information on a Mac by opening the image in Preview and going to Tools, Show Inspector and selecting the Exif or IPTC tab. On Windows, you can see the metadata by Right-Clicking an image, selecting Properties, and the Details tab. You'll see things like caption, dimensions, camera type, color space, exposure Information, and other details. Cell phones will also embed geographic location data, identifying the longitude and latitude.
The challenge is to look through the example files included with Code Clinic, find images, extract the caption from the metadata. Then reorganize those photos into an alphabetical folder structure based on the caption. As always, you may want to take some time to solve the problem yourself. In the next videos, I'll show you how I solve this challenge.
Find answers to the most frequently asked questions about Code Clinic: PHP .
Here are the FAQs that matched your search "" :
Q: Why can't I access the Lake Pend Orielle site (http://lpo.dt.navy.mil)?
A: The Lake Pend Orielle site is not accessible in some geographical areas. We have contacted the owner of the server to try to resolve this issue.
Sorry, there are no matches for your search "" —to search again, type in another word or phrase and click search.
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.