The Curse of Over-engineering

We have two half days (affectionately known as Freaky Fridays) at work a month, where we get to work on our own projects or explore something new. Yesterday was dedicated to exploring Angular 2.

I thought that it might be a good opportunity to test it out in a real-world application – my Flashcards app to help me learn Swedish vocabulary.

The syntax isn’t too dissimilar from AngularJS, but rather is abstracted in more boilerplate code. Getting a basic app going, by following the Quickstart Guide, wasn’t too difficult.

“Look at where you have to be.”

Then, there was a knock at the door. It was Earl, the Grim Reaper of Over-Engineering. He asked me to remember that I am a software engineer and that everything has to be TIP TOP from build one.

So, the curse kicked in and I started scrambling to get the basic setup working with Webpack. I tried cramming in a Webpack tutorial, alongside the Angular 2 tutorial. Soon, it just became about cursing the day Webpack was built and racing through Stackoverflow, hoping someone else wrote something to make everything PERFECT now.

10 minutes before the end of the day, I realized… wait.

The goal was to learn Angular 2 and use it to build an app.

That’s it.

I told Earl that there was another engineer across the street, about to do something simple. He scurried away.

I gutted out the Webpack configuration and stuck with the lite-server package suggested in the Quickstart guide.

Moral of the story: fuck Earl and fuck over-engineering.

 

Learning How to Work in a Team

I am working on a new feature for one of our microservices. It’s about a medium-sized T-shirt that involves working with AngularJS’s ui-router, working with new API endpoints, and writing some CSS from scratch. I’m excited! And a little daunted…

To work against being overwhelmed and becoming unproductive, I focused on tackling the hardest part first – the routing and views. I knew that I was going to work with ui-router, so I read through a few tutorials and brushed up on routing in AngularJS.

I then put together quickly some mock views to connect to the new states and routes. This felt better than starting to code markup and styling, I had to remove the unknown first.

The tutorials only got me so far, so I stopped and thought about it. I did some searches on Google. After a few iterations on this cycle, I reached out to a coworker. Instead of telling him it’s broke give me the codes!, I explained what I had done, what I was trying to achieve, and what wasn’t happening as I expected. Rather than him coming to help me google, it turned into a discussion about patterns, structuring code, and a brief pair-programming to get something working quickly. I even got some praise that my initial concept is good and that I should just find the right balance, between sound design and time spent on the solution.

I thought of this article after the whole discussion with my coworker.

The Weekend It Was – Midsummer, Code, and The Lake

I’ll write about the whole weekend in one single post because I now have two new email subscribers! Thank you, it means a lot…

This weekend was about staying in the discomfort and coming out the other side.

Coding

WordPress Development

And the other side is really sublime, calm, and beautiful. I had been procrastinating on a large coding project for a while now. It was scary and seemed insurmountable. I did a little bit every now and then, but I thought that I could get it done in one major marathon-session. That never happened.

So, this weekend over two sessions, I got the project done. It’s for a WordPress theme and plugin for a non-profit organization, so that their members across the world can set up a new website with information pre-populated from a centralized store.

It was good to be writing PHP again. The plugin and theme architectures take a while to get used to, but I’m impressed by what I can do with the API.

Custom PHP Application

Last year, I started coding a basic web application so that people at my church can digitalize the readings used in our liturgical services.  A few weeks ago, the main user told me that he needs the link to the app. So, as I was about to re-send him the link, I discovered that there were some bugs in the app. (Read: the app didn’t work.)

I understand fully now why we have code reviews, pull requests, and documentation. The code made absolutely no sense to me. It could only speak to my state of mind (frazzled) last year.

An opportune time to bring in unit testing, I went straight to where the main bug was and see how I could fix it. It got messy. I installed and configured to use PHPUnit with phpunit-watcher. The lion share of my time was getting the unit tests to reference the code and play nicely with Composer’s autoloading.

When it finally did work.. I realized that this function was doing too much. Writing the unit test compelled to refactor it to this. It still needs more work, but the process taught me a lot.

Midsummer in Sweden

It was a delightful and beautiful time, watching the raising of the Midsummer pole and families dancing around.

20180616_1504008436154387916906822-1

Picture 1 of 21

… took some videos, too

 

 

A first day with test-driven development

This is a little late, but better late than giving up.

Yesterday was hard. I spent the whole day, trying to get a testing stack going with Mocha, Chai, and AngularJS. It didn’t work, so I switched to Karma, Chai, and AngularJS. It kinda worked, but not entirely. So I switched to Jasmine. Still no cigar.

It was frustrating and a little demoralizing. But, I’ll try again on Monday.

My Strained Relationship with Software Development

I wrote the original version of this piece, last year on Medium. This is an expanded and less guarded take.

I didn’t want to study software engineering in college. I first wanted to study English literature and drama. That wasn’t an option at home. So, I looked at the other things I had dreamed about since childhood – architecture. I put together a portfolio and applied to Bartlett School of Architecture in London. They hid the rejection letter from me and told me no. So, I fought them and the first compromise was computer-aided product design. I just wanted some art in whatever I studied.

There was none of that. It was all math, physics, and science.

Continue reading My Strained Relationship with Software Development

Show Up Every Day

I watched this video of Seth Godin yesterday, talking about rules he lives by. One of them is to blog every day, not because you will garner millions of pageviews or loyal followers, but because that’s how you develop your voice. You blog because you blog, not because you are doing whatever it takes to bump your stats.

It echoes Neil Gaiman in his commencement speech Make Good Art. You make art because it’s what you have to do to exist, rather than a project for the sake of a project that needs to go online and be promoted and be noticed and be shared until you catch a break.

Both videos have cut through a lot of my recent vacillating about blogging and making art in general.

So, here I am. Writing just for today. And making art.

A first stop-motion film

I uploaded a film today to Instagram, my first ever cinematic piece and my second ever completed project. (My first was a documentary.)

Today’s film is my first ever stop-motion piece. It’s the 7th episode in a comic series called Colories. Check out the whole series on my Instagram feed.

#colories ep7 I did #comics #stopmotion #film #shortfilm #shortfilms

A post shared by Mina Demian (@minadimyan) on

This incredibly simple tutorial got me from raw footage to finished clip in about 45 minutes.

Concept

I was given a little rubber duck at a recent hackathon. Leaving it on my desk at work for a few days brought about some ideas. What if I could do something with this duck? Just anything?

I started taking single photos of the duck in different scenes. Much inspiration and debt is owed to my friend and consummate artist Morne’s Putdownness series.

Last week, I noticed some other figures on my coworker’s desk. I had been exploring the themes of loneliness, solitude, and mental health in recent episodes of Colories.

Shot over last night and this morning at my kitchen table, I used my Nikon DSLR on a monopod. No editing or post-production was performed on the shots.

Notes

I used the camera flash as a way to convey what was happening in the duck when he saw the figure. I thought it was a simple way of expressing something visceral and powerful.

The hollow and vacant look on the duck’s face is rather haunting. It would be interesting to expand on this further in a later film.

I wanted to make this film quickly. Should I had more time, I would have figured out ways to manipulate the figure’s arms.

Reflection

This is such a powerful medium. So much can be expressed with so little. It’s all about simple ideas and equally simple execution.

My Complicated Relationship with Writing

I’ll spare you the platitudes of how life has been so busy, or I’ve been through so many changes, or any of that. I haven’t written in a long time, here, on this blog. The only reason is that my relationship with writing is complicated, not in the way that Facebook has now appropriated, but in that it was a non-relationship. Complicated could point at how I carry writing on my arm, as a trophy wife, but at home I beat her to death by neglect.

I didn’t write that novel I announced with much fanfare on Medium and here. I have been preoccupied with discovering who I am. Yeah, not rediscovering, but discovering.

I’m working on not killing you anymore, honey.

There will be no promises or announcements, no lofty goals or projects. I hope that there will be a public reconciliation with this thing I love and discard so much, writing – the closest I’ve ever been to a real relationship.

A Mind’s Narrative Before the End

I see nothing but a closed door,

The people inside
have strangled me.

I regret not stabbing myself
the first time around
the forgettable fart
that I am

Oh, death
Come to me and hold my hand
Let’s go to your place
I know the walk of shame

My death will
sweep in more worthy life
…..
…..
….
There you go.
Open the door
I see the staff
Now, impale me
And let me exhale
all the death inside

….

..
.

This poem was first published on Invisible Illness and is part of a series called ‘The Suicide Diaries’.