Posts

Google's Narrow Focus on Digital Literacy

“We are helping them become more knowledgeable about what the digital landscape is like,” Mr. Hodgson said of his students, “so they can make choices about what they use and what they don’t use.”

Source: Google Is Teaching Children How to Act Online. Is It the Best Role Model? - The New York Times

The Times article on Google's "Be Internet Awesome" campaign does a great job of outlining why programs like this are needed, but not from companies who benefit from users within the program.

I tend to lean toward Kevin's (Mr. Hodgson) approach to teaching about the Internet: it's complex and you need to be aware of what you're using and why. The same is true for teachers. When I'm asked about apps or websites, I encourage them to read terms of service, privacy statements, and other conditions, especially if they want to use the thing with students.

Cutifying the practice of using the web wisely makes it exciting and easy to get into, but it's also easier to gloss over the deeper practices we should be teaching our students.

(Be sure to check out Kevin's blog for more of his writing.)

---

_[Conduits for Textbooks (and more!)](https://flickr.com/photos/wfryer/6997193539 "Conduits for Textbooks (and more!)") flickr photo by [Wesley Fryer](https://flickr.com/people/wfryer) shared under a [Creative Commons (BY) license](https://creativecommons.org/licenses/by/2.0/)_

Twitter's Card Update is Bad For Users

Twitter made a UI change this week with it's card-styled link previews. It's subtle, but the changes have hurt accessibility and hurt the end user.

Twitter allows branded sites (anyone can do it, but brands use it the most) to create "cards" for links they post which include media previews, bold headlines, and a snippet of the article or post text. This gives the user a preview of what's in the link before they visit. The cards used to function like normal HTML `anchor` tags and included alternate text (the small popup when you hover your mouse) or showed the full URL of the link.

Since earlier this week, all of that is gone and it's led to some frustrating limitations.

First, headlines are cut off. And the alt text is gone from the mouse hover action.

[caption id="attachment_614" align="alignnone" width="312"]screenshot missing hover text from Twitter cardA shortage of what? Cold drinks?[/caption]

All browsers show URL paths in the bottom of the screen before you click on them. Twitter short links (t.co) would show first, but then resolve into the full path after a second or two. Not anymore.

[caption id="attachment_617" align="aligncenter" width="357"]A Twitter URL doesn't show the full path anymore. Why is this less accessible?[/caption]

The top-level domain shows, but that's all. Does this link take me to the registration page? Or to the article? Or neither?

Twitter cards no longer show the full link URL

Really, Twitter is making it harder to know what you click on, asking you, the user, to trust them, the company, to show us what we need to know. This update does nothing to help the usability on a platform that has done little to increase transparency and improve the quality of the platform for users.

[video width="1440" height="900" mp4="https://blog.ohheybrian.com/wp-content/uploads/2018/10/twitupdate.mp4"][/video]

---
_[Ripples of Glass B&W](https://flickr.com/photos/zeevveez/27658869717 "Ripples of Glass B&W") flickr photo by [zeevveez](https://flickr.com/people/zeevveez) shared under a [Creative Commons (BY) license](https://creativecommons.org/licenses/by/2.0/)_

Listening Has Changed My Coaching

Aside from trying to be as productive as I can every day, listening - truly listening to people - has completely changed my coaching. Elena Agular talks about listening at length in The Art of Coaching (well worth the read, btw) and since I've made the conscious effort to listen first, I've seen fruits.

I stopped going in with preconceptions about progress or willingness to try new things. One unfortunate carryover from teaching is that I have expectations about specific teachers. So and so is hard to work with or this person will never change...I had shut down any possibility of working productively before I even walked in the room. Meeting people with the intent to listen rather than talk erased those expectations and allowed for positive conversations.

My ability to help people has increased. I don't limit this statement to technical help, which is certainly a component of my work these days. Asking questions and listening for context clues has allowed me to look beyond immediate problems and solve deeper issues, or at least identify issues to work toward solutions.

Summarizing the problem before offering solutions is critical. I stopped taking my computer to meetings with teachers because it leads to distractions. Or, if I do have it, I don't open it until we're working on a specific item. While we're talking, I have a notebook. I'm quietly making notes, looking for patterns and letting the teacher express their frustrations, ideas, or concerns without interrupting. I ask probing questions - "Why did you feel that way?" or, "What did [this thing] help you learn about your students' understandings?" - to draw out reflective thought. Before I start to talk, I take one minute to process my notes and state back, in my words, what they're experiencing. This catalyzes the rest of the conversation and helps us work together.

I can loop back to previous conversations and push toward growth. Since I have detailed notes (completely confidential notes) I can look back to previous meetings and probe next time we're together. Looping back to gently push toward growth on goals is easier because they're the teacher's own ideas. I'm there as a processing tool, not as the Owner Of Solutions.

In the end, I want to make sure I'm helping people in ways they want to be helped. I want to push them professionally by talking honestly about teaching - why we do what we do - to promote growth. If I can't understand what they're saying, it's a fool's errand.


Reflected Rocks flickr photo by Stanley Zimny (Thank You for 32 Million views) shared under a Creative Commons (BY-NC) license

The role of the faculty in the post-LMS world (opinion)

However, working outside the LMS, well-trained instructors will be able to do far more than meet the minimal requirements for moving college courses online...

Source: The role of the faculty in the post-LMS world (opinion)

I don't work at a university, but we're in the process of moving teachers into using Canvas in our district, so this resonates. I see two groups of people:

  • those who already had material online and are struggling to work backwards (essentially) to fit items into Canvas.
  • those who have nothing online and are struggling to make sense of what works well digitally and what doesn't.

The LMS is a weird stepping stone. I've had materials online for years, so I don't like the constriction an LMS brings to what I've done in the past, but I _do_ appreciate the streamlined data I can grab from the system (I need to write more on using Outcomes in Canvas later...)

For the second group, it's a great intermediate step and I'm already seeing people look for more online on their own. They want to push the system now that they understand it more. They're seeing the benefit if using the Internet as a whole and not limiting their courses to the flow in Canvas.

Striking the balance between structure and variety is difficult. I'm not sure the LMS will ever completely go away, but I can see the influence waning as skills develop and alternatives becoming more accessible to teachers.

If We Don’t Allow A Redo, What Are We Teaching? – The Teacher And The Admins

Whatever the reason, he was afforded the opportunity to learn and apply. It hasn’t come easy, but that’s the point. Giving a chance to redo isn’t about being easy.

Source: If We Don’t Allow A Redo, What Are We Teaching? – The Teacher And The Admins

Still in my standards-based grading vein, this is inevitably the biggest sticking point for teachers I work with.

"What do you mean they can retake the test for full credit?"

Mentally, we can agree with the argument that redoing work or retaking tests makes sense in the scheme of student learning. The hold up, I find, is more with the work involved in making those opportunities reliable and valid more than the mental exercise of finding value in the habit.

There are ways to allow students to reassess work that does _not_ include sitting an exam again, which opens more possibilities for authentic learning and demonstration of mastery.

Fair Isn't Always Equal: Three Grading Practices to Avoid

Remember, though, that grades should not be used as rewards. Nor should they be used as affirmation, compensation, or validation. Grades should represent an honest report of evidence at this moment in time, nothing more. If we make them something more than that, we undermine the student’s maturation and any useful purpose for grading.

Source: Fair Isn't Always Equal: Three Grading Practices to Avoid

I'm working with several teachers on moving toward standards-based grading and we're starting to have conversations about grades themselves. I ask how they feel about zeroes, extra credit, completion, and makeup work. This article is a great primer and/or followup to those initial meetings.

Lesson Idea: Learning Objectives

Jessica Till asks a good question on Twitter:
[embed]https://twitter.com/JessicaTilli1/status/1044423084529389568[/embed]
and Graham's response stood out to me:
[embed]https://twitter.com/gfletchy/status/1044528699507449857[/embed]

Turning this around (also mentioned by [Will Dunn later in the thread](https://twitter.com/Willmdunn/status/1044592375526510593)), what would happen if we taught a lesson or went through an activity _without_ positing the objective and then have students state the learning as an exit ticket or closing discussion. What insight could we glean?

Intentions are important, but implementation is harder.

H/T to [Darren Burris](https://twitter.com/dgburris) and [Dan Meyer for showing up in my timeline](https://twitter.com/ddmeyer/status/1044426373425586176).

The Psychology of Classroom Discussions

I've never heard of the Asch Experiment, but this video is worth watching.

[embed]https://www.youtube.com/watch?v=qA-gbpt7Ts8[/embed]

[Kaplinsky's article](https://robertkaplinsky.com/psychology-classroom-discussions/) gives some good classroom ideas on how to avoid groupthink in student responses, even highlighting the Desmos teacher view to anonymize responses (which _also_ works [outside of math](https://blog.ohheybrian.com/2017/04/desmos-in-science/).

During student teaching, questioning was the first thing my training teacher worked on with me. I was prone to asking, "Who knows..." which left the door open to zero responses. Moving to direct questions, "What is...?" or "How does...?" removes escape. I also recall another great post (I can't find it now) about leaving uncomfortable silence after asking a question. Letting several hands go up in the air allows for discussion as you can call on more than the first student.

Mixing Kaplinsky's ideas with leaving room for responses is a great way to help students feel comfortable with replying, even if they disagree with others.

[Read the original article here](https://robertkaplinsky.com/psychology-classroom-discussions/).

Back to School

It's appropriate to write a back to school post nearly a month into the school year.

I took Twitter off my phone back in July in an effort to put my phone down more often. It had become too easy to lazily open and scroll when my interest waned. That bled into time with my kids, and that wasn't cool. I suppose I could have just "worked on my self control," but I'm more of a "pluck your eye out if it causes you to sin" kind of person. Cold turkey it was.

July bled into August which has raced into September. My phone is still Twitterless and I'm feeling more connected to my teachers and schools _here_. The social-edu world had eroded my sense of here-ness...I felt beckoned by people I've never met face to face. My desire to help and engage with the digital friends overrode the drive to get to know people here, now.

By extension, because I was online less, the blog has also cobwebbed up a little bit. I can't write volumes like [Alan](https://twitter.com/cogdog) but I don't want to lose steam here entirely. Finding a balance has been hard. I need to write for me.

The evolving role of coach has pushed me to talk less and listen more. I think that's why I haven't really missed being online. Wanting to write, up until this point, feels like more of a drive to not waste the space than to share insight. Or maybe it's more that sharing insight shouldn't be the driving factor of having space on the Internet. Hubris kills just as quickly as stagnation.

Now that we're back, I'm planning on listening a lot. I'll probably do some processing here, in prose, just because it'll help me work through my own habits and thinking patterns. But I plan on listening more than talking.

Twitter still won't be on my phone.

Reading Summaries

I've decided to fire up a new, static website to reflect on books I read this year. In all honesty, much of this is bring prompted by my grad school reading, but my reading list is also expanding for once classes are done and putting longer pieces together in response have helped.

Anyways, I have two up right now:

1. [Deep Learning](https://sum.ohheybrian.com/books/deep-learning.html) by Michael Fullan, Joanne Quinn, and Joanne McEachen
2. [Poor Students, Richer Teaching](https://sum.ohheybrian.com/books/poor-rich.html) by Eric Jensen.

All books will be listed on the homepage, [sum.ohheybrian.com](https://sum.ohheybrian.com).

Yes, Relationships Matter

I'm in some grad classes right now and in one, we were assigned to discuss, "Does building relationships with students _really_ matter?"

Prior to the discussion, we watched Rita Pierson's [TED talk](https://www.ted.com/talks/rita_pierson_every_kid_needs_a_champion) and read two articles: The _Post_ on differences between [white and black poverty](https://hyp.is/tOOsAGf1EeiQRJdH6VpqFw/www.washingtonpost.com/news/wonk/wp/2015/08/12/black-poverty-differs-from-white-poverty/) and a piece from mic.com on [white poverty in America](https://hyp.is/k63hemf3EeiJ0etMp3WFlA/mic.com/articles/59829/what-white-poverty-really-looks-like-in-america). (Both links are to annotated copies of the articles.)

My unedited response to the discussion thread is below.

---

I must admit, I've started and restarted this post several times this week.

Of course building relationships matters. If we neglect to build relationships, we are missing a fundamental aspect of teaching and learning. Regardless of culture, our species is reliant on relationships with other members. We are predisposed to bond with other people from birth through death. Teachers are in the unique position of spending more time with students than anyone besides their parents, which leads to relationships in some capacity.

Fostering positive relationships will help lead to emotional and mental stability that students, especially students of poverty, are often lacking. We get into dangerous territory when relationships become the only support mechanism for the poor instead of improved services and social programs. In the Post article, the plan to open affordable housing in wealthy neighborhoods is only hindered by the free market and social biases. There is nothing stopping housing developers from lowering rent other than their own bottom lines. Poverty can be combated with solid public education, but to really change the landscape of American poverty, we need larger social change.

The support offered by teachers is critical, but so is support from school counselors and social workers. Since those services are underfunded (or nonexistent in some schools) teachers are left to figure it out on their own. Recently, the 'grit' narrative has taken hold, which is can lead to less obvious, yet counterproductive, results. Jensen (2016) and Kidd (2013) note that most poor families work more than their wealthier counterparts, so teachers encouraging students to get through their issues with perseverance and a belief that they can do better with harder work perpetuate the misconception that the poor are lazy. Students already working hard will be reluctant to form genuine relationships because grit places the blame back on the student, not by recognizing root causes.

Building positive relationships takes more than goodwill and a focus on mindset. Seeing students as people with real needs and real challenges is critical. Recognizing that our life circumstances do not reflect many of our students' builds empathy and allows bonds to form.

---

_Featured image is [December, 2009](https://flickr.com/photos/bennettscience/6851194168 "December, 2009") flickr photo by [bennettscience](https://flickr.com/people/bennettscience) shared under a [Creative Commons (BY-NC-SA) license](https://creativecommons.org/licenses/by-nc-sa/2.0/)_

The Big Dig

Our septic system needed to be upgraded, so we took the hottest weekend of the year (so far) to do it. My wife's dad and brother spent the day with me on Saturday digging large trenches to bury leach chambers. We redid all the plumbing. We plowed a new, larger garden and cut down some nuisance trees.

I've also learned about navigating the permitting stages with the health department. Good news is that I'll never need to do this again.

Septic Field Repair

Killing Pico (and Micro)

Earlier this year, I wrote up a really bare-bones blogging system I called [Pico](https://blog.ohheybrian.com/2018/04/pico-a-tiny-blog/). It's a Python app that reads plaintext files and publishes them to a website.

Well, something in serverland changed and now they're not loading. My experience with server configuration is nil, so I'm going to proclaim those two sites dead. It makes me a little sad, but they were also just proof of concept.

[The code lives on GitHub](https://github.com/bennettscience/pico). If you're someone who likes to poke, give a poke over there.

---
_Featured image is [Cemetery](https://flickr.com/photos/hpeake/37430662781 "Cemetery") flickr photo by [Fenrir Wolfy](https://flickr.com/people/hpeake) shared under a [Creative Commons (BY-NC-ND) license](https://creativecommons.org/licenses/by-nc-nd/2.0/)_

Moving back to WordPress

You might not have noticed (or you might have...who knows) but this site is now back on WordPress. I had shifted to Jekyll back in December for the speed and security of static pages, but I ended up writing less, and I didn't like that. So, it's back to WordPress.

_Most_ pages should be working correctly. There will definitely be problems with embeds (images, etc) and I'll be working through those over the next several weeks (years?).

Post categories and tags are also messed up and I'll be reindexing those as well. The search bar on the right works, so stick to that if you're looking for something specific.

---

_Featured image [Monopoly](https://flickr.com/photos/randomwire/4219093814 "Monopoly") flickr photo by [randomwire](https://flickr.com/people/randomwire) shared under a [Creative Commons (BY-NC-SA) license](https://creativecommons.org/licenses/by-nc-sa/2.0/)_

Reflector

I wrote this as a post to a discussion forum for grad school. It seemed fitting to post on the blog as well. It’s a response to a children’s story called ‘The Rag Coat’, in which a poor girl’s coat made of rags tells stories about everyone around her.

I’m not really a journaler; I do blog regularly, but it usually isn’t about life stuff. But, I always have a notebook with me. It’s a habit I picked up from student teaching, mainly for doing quick reflections on lessons I taught or observations of my host teacher. She really helped me establish a habit of reflection that started with pen and paper. Every year since then, I usually go through a full notebook.

A stack of notebooks on a table

They’ve become unofficial journals; memories elucidated by lesson plan ideas, to-do lists, and trip packing lists. I can pinpoint the spot in a notebook from 2013 when we moved back to the United States from South Korea. I’m reminded about recommendation letters I wrote for students who are now out of college (and some with kids of their own!)

There’s the notebook where the writing switches abruptly from a large project brainstorm to HR managers after I lost a job unexpectedly.

There’s a notebook with baby nursery lists as we got ready for each of our daughters.

Writing things down - even little things - has become my norm. It helps me connect with teachers, who see me as the “tech guy,” when they wonder why I still have paper and pen on hand. It bridges gaps caused by fear and apprehension of change.

I’m looking forward to finishing this year’s notes.


Featured image is History flickr photo by bennettscience shared under a Creative Commons (BY) license

A Case for Better Course Design

Campus Technology published an article last week about a biomed course that saw mixed results from flipped instruction. The full article is open access (CC-BY 4.0) and available to read. I’ve read and annotated the original article and I’m going to distill a couple of points from bot the published report and the CT article.

The Report

The authors state right up front that there “were no statistically significant differences in examination scores or students’ assessment of the course between 2015 (traditional) and 2016 (flipped).” Campus Technology (and other publications) often latch on to the grade implications rather than qualitative student feedback on the efficacy of flipping. To the researchers’ credits, they do recognize higher retention and application as reported by students on self-reported feedback surveys.

The biggest red flag for me was in the definition of flipping. As Robert Talbert regularly points out, many research articles limit flipping to “video at home, discussion in class.” The article elaborated on the at home experience in the methods section. From the article,

Students were introduced to new material each week by completing assigned readings from textbooks and journal articles, then by watching recorded lectures given by faculty experts at MSPH on one of 10 core epidemiology topics. Next, students completed short online graded assessments of their understanding of the new concepts presented in these media based on the Just-in-Time Teaching (JiTT) pedagogy…

Students were also able to submit questions to instructors prior to the in-person meeting that would be addressed at the start of the session. The article also makes note that doctoral students and instructors would monitor questions via email or office hours in between in-person meetings.

So, students watched a lecture (no discussion on the format, length, or content of the lecture), read some articles, and then began to apply material in preparation for the lecture. More on this later.

Students reported confidence in their learning and ability to apply materials with a slight increase in the flipped (84.1%) vs traditional (80.6%) cohorts (non-statistically significant, however).

Campus Technology’s Interpretation

The opening sentence proclaims:

A study at Columbia University’s Mailman School of Public Health found that in a health science course following the flipped classroom model, there was no statistically significant differences in test scores or students’ assessments of their course, compared to a traditional lecture course.

They do not note that the study took place over two years (two different groups of students) but did report positive impacts due to freedom to watch lectures when they wanted to (improved flexibility). CT also included an insightful quote from one of the authors about the lack of time to process information in a traditional setting after a lecture (discussion was immediately after lecture in the traditional design) but that flipping doesn’t allow for “[direct engagement] with the lecturers”

The Bigger Picture

The research study and the ensuing report highlight two things for me:

  1. Grades are often the motivating factor when flipped classrooms are studied which limits discussion of student impact and,
  2. the perceived importance of course design is negligible when studies are conducted or reported.

Students reported a higher satisfaction with the class due to flexibility and because they felt more confidence in the material. Time to process information is important and they were better able to contribute to discussions after having time to think through the lecture. But, all the CT article focused on was the grade. It isn’t a secret that few practitioners (K-12 or higher ed) actually read the reports unless they’re actively planning their own study. There is a responsibility for news outlets and blogs to include gains beyond the final exam score.

How did students grow beyond the test? What improvements did instructors see in the cohort? These are important factors that should be included in followup interviews if not in the research report itself. The research did have the six instructors full out surveys, but they were not reported in the results with student feedback.

Secondly, course design is critical if we want to improve student performance. Several of the citations were quite old (early to mid 2000’s) and were in a similar vein, looking at student exam scores rather than course design and teaching methodology (granted, several of the cited articles were paywalled so I couldn’t do a full evaluation of each).

If we simply bottle courses and reverse the time of interaction, why would we have an expectation of student improvement on exams? This article shows that the course is consistent, if nothing else, with no change in student exam performance. How would it have changed if students had explored material before the lecture, as in Ramsey Musallam’s or Dan Meyer’s work? How would students have benefitted from interactive items at the beginning of the discussion period rather than a rehash of the lecture from the instructor?

While the research makes some interesting points, it is far from conclusive in its results on the efficacy of flipping. The authors make conciliations at the end, but we need to continue to push the discussion away from a particular technology solution and start by analyzing our instruction methods as the real turning point in student learning.


Featured image is Lecture Hall, Chairs flickr photo by Dustpuppy72 shared under a Creative Commons (BY-NC-ND) license

Pico: A Tiny Blog

More of my life is run in plain text. I don’t really use word processors any more (other than Google Docs for work) because they’re heavy and not really compatible across various devices. So, I’ve gotten in the habit of writing in a text editor (Atom, at the moment) and syncing across devices with Git or Dropbox, depending on the circumstances.

I’ve also been trying to do more with Python rather than relying on JavaScript. I don’t always have an Internet connection, and you don’t need a connection to be productive with Python.

The third element in this perfect storm was looking at my site access logs. I moved this blog to Jekyll back in December mainly because I was running out of hosting space with WordPress. I don’t really know how to do crazy database stuff like Alan or Tom, nor do I need to. I also saw a ton of failed login attempts on my WordPress site (thank goodness for strong passwords), so I decided to go databaseless with the switch. It’s hard to hack plain HTML.

This is what birthed the idea for Pico.

Pico is a tiny blogging engine written in Python that reads plaintext files.

Jekyll is great for complex site structure, but it requires the site to be regenerated (pagination updated, categories and tags indexed, etc) each time you publish a post. What if you want something smaller?

Pico is written in Flask, a templating engine written in Python. The core is similar to Jekyll: a script reads data somewhere and renders it in templated HTML. The main difference is that Pico does that when the page loads from straight text files rather than rendering the site beforehand. The idea is that you can write a post somewhere with minimal markup and frills and have the browser do most of the work. Styles are minimal and the source files are kept to a bare minimum. It even has RSS!

You can see a demo of the site if you’re curious and grab the source and see some of the technical information on GitHub.


DSC_0146 flickr photo by bennettscience shared under a Creative Commons (BY-NC-SA) license

Mugs

Every Friday, our local NPR station has a segment called Michiana Chronicles which features essays by area writers. I don’t catch it often, but I happened to be driving today when it came on. It’s titled Mug Storiesand it inspired this post.

I definitely have my own preferred mugs. I usually look for the wide-mouthed blue mug that we got in the Korean equivalent of a dollar store. I bought it because I needed something for coffee in my first teaching position. We were 24, transplanted to the center of Seoul and learning how to build a life together. That was the same year I bought my wife the wide, hand-thrown mug with a violet painted on it from 인사동.

Our overseas mugs aren’t limited to Korean origin. We also have a nice heavy vessel from Austria adorned with Schladminger that my wife obtained while studying overseas during college. We’ve both been to Austria, though separately. I’d be okay going back some day with her.

(This photo is from Bavaria in Germany, but Austria is just past those mountains, so I’m going to count it.)

This is technically from Germany, but Austria is just past those mountains

IMG_3854 flickr photo by bennettscience shared under a Creative Commons (BY-NC-SA) license

We had a smaller mug from Thailand from our trip during Christmas in 2010. It was brown with a white glaze ring around the top and a mosaic-like pattern on the white. It was delicate and made the 7,000 mile trip home fine only to have the handle broken in our dishwasher one afternoon.

The Thailand mug before it broke.

Bottom of the cup. flickr photo by bennettscience shared under a Creative Commons (BY) license

Some of our mugs come out more frequently in particular seasons. We were gifted two mugs from a local potter as wedding gifts. We got to go to meet Peter the Potter in his workshop and pick out two hand-thrown pieces. One still survives today, nearly 10 years later (the other developed a hairline crack and it started leaking). We were married in the spring but the burnt orange and earth colors of the glaze make me reach for it more in the fall as we hunker down for the cold winters.

Other mugs don’t come out enough. It’s a reminder that we need to have people in the house…enough to use the mugs that don’t get used regularly. They’re just as good as others, but for one reason or another, they’re relegated to guests only. We ended up hosting Easter dinner this year. Family and friends came over for a meal and all of our mugs were in the dishwasher that night.


Featured image Full House Cafe flickr photo by pheezy shared under a Creative Commons (BY) license

Event Manager Web App

Adding to the list of things to blog so I don’t forget about them in the future, I built an event manager web app for prom.

Sales

Writing data to/from a spreadsheet through a webapp is faster and easier on the sales team than having them edit a spreadsheet directly. Names are pulled by matching ID numbers in a lookup database and populated in the form automatically.

When a ticket is sold, the name is added to a running list on the right side. The app also ensures no students purchase tickets more than once by comparing current sales with the submitted ID number and returns an error if the person already exists in the sales record.

image1

Manager

Students are checked into and out of the event by the door staff. A full list is returned to the app that can then be filtered by ID number by the staff. Clicking on a number populates a card showing the student information for verification. They can then be timestamped into and out of the event by the staff.

This worked well because each of our students has a unique six-digit ID number we can use to look up their information. It could be quickly repurposed to assign an ID number at registration rather than assign a name and have the manager page function the same.

Full code for the project is on this GitHub Gist.


Featurend image: Conference Queue flickr photo by Bearfaced shared under a Creative Commons (BY-NC-ND) license

Reclaiming Jekyll

In December, I moved off of WordPress to Jekyll. This is easy to do with GitHub Pages, but I wanted to self-host because keeping a SSL certificate was important to me. I followed Tim Owen’s sample had everything up and working well.

I faced two specific challenges, though.

  1. FTP and SSH uploads were blocked in several places where I normally work. That meant I needed to remember which files needed to be uploaded via cPanel every time I wanted to publish a post. I would often forget an image or have a broken link, which meant regenerating the entire site.
  2. Because SSH was blocked, I had to use a cron job to publish the post. I would set one up to run every 5 minutes while I was working to make sure the changes were correct. Then, I would delete the cron job.

The bigger issue was that building on the server duplicated the site files. So, I’d have a folder of all of my posts and assets (images, styles, etc) that would get copied into the live site. Instead of shrinking my server footprint, it was doubled. No good.

My next idea was to use git, which is preinstalled on Reclaim shared hosting (which is awesome), to manage all of my files. But, I ran into the SSH problem again (HTTPS doesn’t work out of the box with git and setting it up is a headache). I also had problems tying the folder to the Reclaim location for some reason. So, that idea was out.

I continued to think about the problem and I finally landed on it: I wanted to keep all of my files on Reclaim when I really only needed the _site directory. I can build it on my computer and then publish only the live components.

This introduced another problem: it’s more complicated than just uploading the new post. The _site directory is changed and paginated with each build, so all of the relative links have the potential to change. How would I limit my upload to the site directory without needed to build on the server?

It turns out that you can pull single directories from a GitHub repo online. The key is only checking out the directory you want. Instead of using git pull to fetch and merge everything, you break it down into several steps.

  1. Set up an empty repository using git init.
  2. Assign a remote repo via url using git remote add. So, mine is called nodes-site and maps to https://github.com/bennettscience/nodes.git.
  3. Fetch the entire project with git fetch nodes-site. This finds and maps the entire project to git but doesn’t actually add any files yet.
  4. Check out a single folder with git checkout nodes-site/master -- _site. This creates a read-only directory!

I don’t need to write any files on the server…I do all of that on the computer. This step just grabs what’s been published to the Github repo and displays it as a live page on blog.ohheybrian.com.

Here’s my new process:

  1. Write and build the site on the computer. It runs faster, no need for the Internet.
  2. Use git to track all of the changes and push it up to GitHub. All of the files are public already through the blog, so I don’t care that it’s available publicly there, too. In fact, it serves as a nice backup in case I really bork something up.
  3. Write the steps above as a cron job to pull the _site directory in a couple times per day. If nothing changes, no new files are copied over. If there’s been a new post, that’s reflected in Git and the entire directory restructures with the changes.

My original folder (with everything) came in around 300MB. The new folder, with only the published material, is about 180MB. So, I saved 50% of my disk space by publishing only the live pages.


This StackOverflow post got me moving in the right direction.

Featured image: Allen-Bradley Clock Tower flickr photo by kallao shared under a Creative Commons (BY-NC-ND) license