Coding

Ever since I advanced beyond the “hello worlds” of Java, I had never stopped coding. This section is for documenting code usages that I had employed while solving the technological problems that I had encountered.

Building a Raspberry Pi 3 prototype camera that takes a picture at the press of a button

A fun way to test your Raspberry Pi Camera on your Raspberry Pi 3 is to build a prototype that takes a picture at the press of a button. Through such an activity, we will be able to experience:

  • connecting a button to the GPIO ports on a Raspberry Pi.
  • setting up a camera through the CSI interface of a Raspberry Pi.
  • preparing an operating system, such as Raspbian Stretch Lite , for running Raspberry Pi projects.
  • coding a Python 3 script that interacts with the GPIO port and camera on a Raspberry Pi.
  • running a Python 3 script when Raspberry Pi powers on.

Given these points, this post shows how you can build a Raspberry Pi 3 prototype camera that takes a picture at the press of a button.

How to use Python 3 Pillow on Raspbian Stretch Lite to compress your jpeg image

When you are building a Raspberry Pi camera project, you may want to compress the images captured from the camera to reduce the time to upload your image to a server endpoint. Moreover, when you connect your Raspberry Pi to your iPhone Personal WiFi hotspot, you will want to incur minimal mobile bandwidth charges from demonstrating your Raspberry Pi project in your class.

You may have either:

In this case, you will have the option to use Pillow, a fork of Python Imaging Library, to compress your jpeg image.

Flexible CSS rule-sets to keep your images within their parent element

Since an image is worth a thousand words, we use images in your webpage to express complex ideas succinctly.

By default, if we do not specify any dimensions for an image, most browsers will show the image according to its actual size. In this situation, an image will appear to spill over the boundaries of its parent element if it is bigger.

For example, the following screenshot shows the image at https://commons.wikimedia.org/wiki/File:LARGE_elevation.jpg spilling over its parent element:

Example of large image overspilling the parent container

One way to prevent a larger image from going beyond the boundaries of its parent element is to give a standard width to all images. However, if the actual width of an image is smaller than the given width, the image will be stretched:

Example of small image being stretched to fill parent container

This post shows the CSS rule-sets that you can use for flexibly keeping images within their parent element.

How to upload a file and some data through HTTP multipart in Python 3 using the requests library

Undeniably, the HTTP protocol had become the dominant communication protocol between computers.

For example, when we want to upload a file and some data from to a HTTP server, we do so through a HTTP multipart request.

So how can we do that in Python? In Python 3, we can use the services of the requests library to help us construct HTTP multipart request easily.

In case you need it, this is how to upload a file and some data through HTTP multipart in Python 3 using the requests library.

Programming languages that you can use to build applications for Raspberry Pi, via Raspbian Stretch Lite

A programming language give programmers an interface to create computer applications to serve different use cases. On the other hand, a Raspberry Pi is one of the things that a programmer should consider getting.

Raspbian Stretch Lite is the official operating system for programmers to run server applications on a Raspberry Pi. You can use Raspbian Stretch Lite for applications that do not require a graphical user interface.

So what programming languages can you use for building applications for Raspbian Stretch Lite?

This post discusses some programming languages that you can use for building applications for Raspbian Stretch Lite.

Implementing Google Custom Search as a WordPress page without using any plugin

Creating a search engine to search content across a polyglot website is not an easy task. In order to do that, you need to either:

  • take a search query and match it across data repositories from different application processes, or
  • have a process that will maintain an index of content from the different applications and search within that content.

Since Google had indexed most of the content in the Internet, Google Custom Search can be the easiest way for us to implement site-wide search. In addition to fast searching, Google Custom Search also comes with AdSense monetization.

In case you need it, this is how you can implement Google Custom Search as a WordPress page without using any plugin.

How to create a custom page template in WordPress

We use pages in WordPress to hold content of our website that are not specifically time-dependent.

Examples of such content at Techcoil include the about page, disclaimer page and Raspbian Stretch Lite project ideas.

When you want to show content in different page layouts, you can create different customized page templates to show content in different ways.

In case you need a reference, this post describes how to create a custom page template in WordPress.