i put up the first steps of a track7 redesign on january 2nd, 2016. i had of course started working on it much earlier than that, but this was when i had enough ready to start the transition. this time around i have less time to spend on my website, so it’s likely to remain in this partly-new, partly-old state for some time.
previously i supported phone-sized and full-sized browsers somewhat separately with m.track7.org fitting the smaller screen and tested on my iphone. i’d start with the full-sized design and then tweak whatever i needed to so that it would work on my phone, which sometimes meant more significant changes than just css layout. since then i’ve learned about flexible design (layout makes sense on any size browser) and designing for mobile first, so i’m trying that out this time. so far it’s actually been more simultaneous where i design the whole sweep of resolutions at the same time, but i think it’s working better to think about smaller screens during the initial design instead of as a separate design afterward. it’s made the layout simpler and less busy, and it’s nice to know the separate m subdomain is going away in favor of just showing the appropriate layout for the size.
i adopted a color scheme i’ve used elsewhere and liked: a light yellow background with a darker blue for links and light grey for accents. body text is now a serif font while headers remain sans serif, and the fonts are embedded using css so everyone should sees the same regardless of which fonts are installed. i’ve also found css flex to be very useful for layout and have been employing it heavily since it can usually do what i want.
it’s a full rewrite this time around, and that includes backend changes that might not be noticeable. a significant problem with another site led me to also revisit my database design with attention on performance. i read up on mysql performance as much as i could, and am doing more on the database that i previously would have done in php. database performance hasn’t ever really been a problem for track7, but i feel like i’m doing a better job using my database. it also means i’m actually in a new database with this design. as i rewrite sections of the track7 i’m also writing utility scripts to convert the data to the new database, which is often done using an
insert into select from query where i don’t actually need to do anything in the php besides run the query. doing more inside mysql has also finally launched me into learning more mysql — i’ve already started using prepared statements and triggers, and i may even get into stored procedures. in the past i did everything but the basics in php.
security’s always been important, but taking a fresh look at everything made me think i could do better. the visible part of this is signing into the new parts of track7 is now done through accounts from other larger sites. besides being more secure because they all use ssl encryption when you enter your password, it’s also easier for new people to join track7 and keeps new and returning people from having to remember yet another username and password. i brought over the usernames and passwords from contributing users so they can access their existing track7 accounts before adding another account for sign in. this is probably the most awkward part of the transition — having two users systems in place that don’t talk to each other means that when someone logs in they’re only logging into either the new part or the old part. it’ll be great to get everything rewritten and delete the old users table!
i’m excited to be freshening up track7 again! i’m not sure how long it’s been since the last time i made it look any different, but i’m certainly finding enough things i’d like to improve. hopefully the transition won’t last too long and now that i’ve rewritten the blog section i’ll start writing more again!