App Lab logo

What is Pair Programming?

2021-03-29Rohaid Bakheet

So you’re working on a project with another person or group of people for the first time, and you’re unsure of how to stay motivated or stay focused, what on earth do you do? Well there are multiple solutions to said issue, but we’ll be talking about a specific technique called pair programming.

Read more…

Where to Start in App Development for Non-Coders

2021-02-22Jonah Soberano

If you don’t have experience with coding, you may be unsure on where to start with your web or mobile app ideas. Below are some tips that can help get you started.

Read more…

Debugging Tips

2021-02-17Daniel Manila

Debugging is a fairly essential part of programming, and this post aims to give you a few general tools and strategies to help you debug effectively.

Read more…

React Native Workshop in partnership with Level The Playing Field

2020-10-02Jeff Terrell

In participation with Level The Playing Field, I’ll be teaching a series of workshops on React Native in the Virtual App Lab.

Read more…

How to Use Grid Layout

2020-09-04Lasya Pullakhandam

The CSS grid is a two-dimensional layout system that allows us to stack and line up content in columns and rows. One-dimensional Flexbox elements can be used for smaller components in the grid layout. And since it is built into CSS, the native properties allow for better performance.

This post will go through the basics of CSS grid, how to set up a simple grid layout, and how we used it to clean up our own website.

Read more…

Integrating Clem with Cursive

2020-01-17Daniel Manila

Clem is a program intended to make development with Clojure easier by helping explain Clojure’s sometimes cryptic error messages. It integrates with your REPL an uses an online database to attempt to find more human-friendly messages to explain your errors.

This post will go through the steps required to integrate Clem with Cursive.

Read more…

Installing Cursive IDE for Clojure

2019-09-27Daniel Manila

Cursive is an IDE built on top of IntelliJ that supports syntax highlighting, code completion, repl integration and other features for Clojure and ClojureScript. Unlike many other Clojure IDEs, it is comparatively simple to install and has ordinary GUI.

Read more…

A Clojure Tutorial

2019-09-26Daniel Manila

Did you know that there is a programming language that’s not only consistently enjoyable to use, but also amazingly productive—and which was the highest paying language according to the 2018 Stack Overflow developer survey? In this talk, Professor of the Practice and App Lab director Jeff Terrell introduces the programming language Clojure.

Read more…

How to install Clojure on Windows

2019-09-11Jeff Terrell

For reference, here is how we in the App Lab recommend installing Clojure. The official guide works great for MacOS and Linux users, but it currently has some confusing aspects for Windows users that are worth clarifying.

Read more…

A design tutorial using Figma

2019-09-10Jeff Terrell

A few days ago, with the help of my TA, Srihari Pratapa, I gave a tutorial on using Figma for UI design to my COMP 523 class.

Read more…

The UNC Design Lab

2019-04-02Jeff Terrell

I recently discovered the UNC Design Lab and thought others should know about it.

Read more…

Creating a GitHub Pull Request (video)

2019-03-21Jeff Terrell

I just uploaded a video showing how to create a fork and a pull request in GitHub. This is a little more complicated than pull requests within the same repository because a repository owned by somebody else typically doesn’t allow you to push commits directly to it. Check out the 9-minute video, or read on for details.

Read more…

About the Mural

2019-02-27Jeff Terrell

Last semester, I invited students (especially art students) to submit an idea for a mural, to make the App Lab feel a little more colorful. In the end, I was most impressed with Henderson Beck, who helped me get a mural completed and posted on the wall. This post tells that story and includes links to pictures, source code, and even a video of the mural.

Read more…

A backend tutorial

2019-02-15Jeff Terrell

A few days ago, I gave a talk to participants of the 2019 UNC Makeathon about how to create a backend web service.

Read more…

A few resources for learning git

2019-02-04Jeff Terrell

This morning I gave a lecture about git to my COMP 523 (software engineering laboratory) class. (Update 2019-10-03: I just published a video tutorial of the same content.) Some know it well; others barely know what it is. Here are a few resources I’ve collected on learning git, with some notes about how appropriate they are to beginners vs. more experienced people.

Read more…

A Redux.js tutorial

2019-02-01Jeff Terrell

A couple of days ago, I gave a lecture to COMP 523 (software engineering laboratory) about Redux.js. I developed a simple example based on the (perhaps familiar) tic-tac-toe idea. Then I built an app based on Redux one step at a time to demonstrate its key concepts.

Read more…

How to build an app: an overview

2019-01-31Jeff Terrell

I gave a talk last fall titled ‘How to Build Your Killer App’ as part of Global Entrepreneurship Week. It was an overview of the entire process of building an app, intended for non-technical people who aren’t necessarily interested in learning how to code. I published my notes from the talk, which are a good read to understand the whole process and get pointers to additional resources.

Read more…

Building a Tic-Tac-Toe mobile app with React Native

2018-10-02Jeff Terrell

HackNC happened the weekend of October 6–7th, 2018. Leading up to the main event, there were a few talks, including one I gave on React Native. It was intended for programmers who didn’t have any prior experience with React.js (on the web) or React Native (for mobile apps).

Read more…

Migrating HTML markup into code with Clojure and Hiccup

2018-09-29Jeff Terrell

In the previous post, I implemented a graphic design as HTML and CSS. But the HTML will need to vary depending on what’s being displayed. We could simply duplicate the page for every variation, but this is cumbersome and leads to brittleness. Instead, we want to transition the HTML markup to a more malleable medium: code.

Read more…

Implementing a graphic design in HTML and CSS

2018-09-28Jeff Terrell

A common scenario professional web developers encounter is getting a graphic design and needing to implement it as a web page in HTML and CSS. I encountered this scenario with the Clem project, and I captured about 2 hours of video capturing my (unrehearsed) attempt to solve it.

Read more…