Day 22, #100DaysOfCode
It’s not really a streak if you stop
I’ve exited my scheduled hiatus because a scientist needs to be solving problems and an engineer needs to be building something. I have the curse of loving to learn and thus fall into all three camps.
Progress
- Started Local Weather app
- Successfully logged my work progress today
- Solidified CSS skills
Thoughts
Damn, do I hate inconsistencies. Sometimes the browser wants to use a default style that just happens to include a width , for your easy fix for centering elements. And sometimes the browser doesn’t, and poor developers (who are none the wiser) spend hours trying to sort out their CSS not performing as expected.
I am one of those poor, hapless developers.
Dear friends, I hold myself to fantastically high standards. So much so, my parents worried about me as a child (heck, they still do.) I was anxious throughout my youth, and had no one to hone this agitation, save one stark lesson of, “just because you’re angry, doesn’t mean you can hit things”.
As such, I’m disappointed when I can’t remember that the horizontal alignment of a single DOM element requires it have a prescribed width. Otherwise, it has a width of 0 until the DOM has been written, the document is ready, content is filled in, blah blah blah… This is why I read the spec!
Being caught up in the academics has left me slightly out of touch with everyday implementation with these technologies. So this is one more thing that I’m going to “get my crap together” on over the rest of this sustained coding exercise.
Hapless no longer, I’ve got documentation for how the web works and I know where to go to get the spec. (And if I don’t want to read the specs, I’ve got the next best thing) Beautiful sites are just a few key strokes away, now that I’m past mental fixation on a problem-that-shouldn’t-be.
Oh yeah. The OpenWeatherMap API charges for HTTPS.
…
…
F — — — — — — — — — — — that noise. No thanks. I wouldn’t care if it wasn’t mandatory Chrome (and Edge) that API requests are HTTPS. But I use Chrome (and Edge). So instead of losing 62% of potential users, I’m just using a different API.
Apixu’s Weather API does no hastle HTTPS (for free, up to 5,000 hits a month) and Fahrenheit/Celsius conversion on the server side. I like my application views dumb and I like ’em pretty. Now I’m half way there.
Tomorrow
Morning
- Feature complete Local Weather
I’ve got everything in place. Now, I need a button to toggle Fahrenheit/Celsius back-and-forth, some passable styling, and a handful of icons (or images) to reflect the temperature. Time to complete estimation: 2 hours.
- Style the Local Weather app to flat, color indicative UI
This is going to be multiple days, but I plan on becoming a serious CSS champ once all is said and done. I’ve read about (roughly) 6 CSS scalable-codebase patterns, a handful of books, and dozens of blog posts on doing CSS right. It’s about time I wrote some of it myself.
- Personal, secret project
A big part of this project is visual.
At work, my teammates waste a lot of time make Bootstrap play nice. I’d rather just know how to write the stuff, so I can actually grow and be competent in any front-end code base, then just do it myself. I don’t plan to sully this project with CSS frameworks.
To personally write this project’s CSS out, I’ve got to be a little more withdrawn in my self-skill-expectations, so I don’t overshoot or ship crap. The effort will result in componentized, modular, expressive CSS (classes-only). It won’t have dependencies (maybe a font or two) or unclear naming. And the world will be better off for it.
Till then.
I really enjoy doing this writing, and it amazes me that even one person gives this a recommend. I plan on doing this for a long time, so feel free to follow along in the journey.
