HN user

ninjaofawesome

11 karma
Posts1
Comments10
View on HN

Although I don't know of any sites that will do this, when I was on the upswing with CSS, I found that making breakable toys was very helpful for me. (For example, I made a very basic site about cat fashion- nothing spectacular design wise, but it taught me a lot about responsive design and let me practice more on my Sass skills as well.)

Perhaps a better tack for you to learn is to find a small business or nonprofit who has a strong brand identity but has no real budget for getting their site made. (I also did this, very helpful.) On the plus side, you'll be helping out someone while you learn, and you don't have to necessarily have great design skills as its already ready already.

Lastly, just my two cents here, getting better at CSS doesn't have to necessarily be 1:1 with design all the time, but it helps to be open to working with designers and having a rudimentary knowledge of design to achieve the look and feeling that they're requesting. So maybe befriend a designer or two and pick their brain a little. You'll probably find that when working with designers in the future that they'll appreciate that you have some knowledge of what they do as well!

You may want to look into Sass (SCSS). It makes your code reusable and extendable via variables, mixins, loops, if/else statements- its quite robust.

Another suggestion, such as SMACSS is BEM (my personal favorite), as it flattens out your styling to prevent over specificity and makes everything clean and neat. (Check it out here: http://getbem.com/)

Ultimately though, what I've found reduces messes is to think of the end product before beginning. If you have the luxury of starting with a fresh codebase, think of the end product and its styling before starting- much like you would with any other set of features in any other language.

If you're walking in to legacy code, try to avoid the "one-offs". Sure, they solve the problem now, but its making a mess for future you to clean up as well as being a potential code smell. Leave your code a little better than when you came in and you'll be thanking yourself later.

Good luck!

Perseverance and responsibility.

There's been lots of times where I personally didn't want to do something or learn something, but realizing that I was responsible for whatever that was helped me keep doing what I didn't feel like- and ultimately that results in happiness and a sense of accomplishment.

Yes, yes and yes! In addition to progressing as a developer, you'll be surprised at how much you'll forget as you move on to other projects and having it written down in a way that you can understand is incredibly valuable.

Its been over three years since I've graduated my bootcamp and I still blog regularly, have multiple breakable toys and keep my documentation up to date. Its saved me more than once!

As a front end developer, I would say if you need an MVP to get out the door and you've got a bunch of plates in the air, then yes, Bootstrap (and also Font Awesome!) works just fine for all the things that you don't really care to worry about at the present moment. Its also easy enough to remove if you do eventually bring in a UX person or a designer to refine things.

That being said, the little things that you can do make a huge difference between a site that looks like its made with bootstrap vs a site that has a bit more going on under the design hood. Pay a bit of attention to your fonts and line heights, add in -webkit-font-smoothing, and lock down your colors before you start (e.g. black, white, brand colors, grays, etc.) Consistency will make your life so much easier to get that UI looking amazing, and it takes about 15 minutes or less to write down some variables (assuming you're using a CSS preprocessor). Also, optimize your assets (images, etc) and make sure you have fallbacks if something doesn't load fast.

Lastly, make sure you know what you (roughly) want your app to look like on mobile, tablet and desktop before just diving in to Bootstrap- even just roughly sketching out boxes on paper helps me sometimes with that. I like to use the Chrome emulator for a rough idea of any device as I work on phone, tablet and desktop in either orientation as well.

All in all, what I've described you can easily implement in a a few hours to a few days (depending on the complexity of your site) and makes a huge difference. Once you're making millions, you can hire a great designer to push your site to the next level!

Living in a tiny apartment with my partner in New York, I love it. The way we see it, we have less stuff to own, clean, (if it didn't come included) heat, etc- and it works out just fine. I personally think that having more stuff and space doesn't make me happier, having better life experiences (good friends, travel, walkable neighborhoods) does. Also, I also value community involvement very much, which makes anywhere I live way more interesting and engaging.

However, I can relate to the wildly opposing viewpoint perspective between you and your SO, so perhaps a mediator may be in order- an impartial friend, a therapist, whomever you trust and isn't biased. Neither side needs convincing, but perhaps both sides may need a happy medium. Perhaps a new house may be in order regardless, or maybe just reorganization or expansion on your current place. But the way you describe it now, it sounds like nobody will end up really happy with the outcome.

I was a frontend hobbyist a couple of years before I decided to pursue this full time, and for me, I found that a bootcamp for fullstack web development was the way to go to REALLY get up and running. I found that dedicating half my day (or more) learning and coding in a classroom with like minds was the only way I was able to go from a passing interest in this field to something that I could actually see doing for the rest of my career (and for my own benefit beyond that).

Having seen more than one person go through them and on my experience though, not all bootcamps are created equal (in addition to how much work you put into it). Mine was fantastic, I got lucky. So also be sure to do the research first, and ask other (hopefully impartial) developers what their thoughts are on whatever ones you're interested in.

If that's not an option, before I went to my bootcamp and I had some confidence in my basic skills, I started to ask people who wouldn't have been able to afford a custom built static site on their own if they'd like a free one. It gave me practice with my frontend skills, they got a neat product, and I could have a portfolio piece. Everyone was happy, and I met a lot of neat people along the way. The TL:DR; on that is I'd suggest doing some practice, then finding something that you'd like the build (because you need it or want it), and then try building it with a mentor and plentiful tutorials.

When I first started to blog as a developer, I was paralyzed about what to write as I wanted to make extra sure that my posts were nothing short of life changing. Thus, I didn't do it that much and the posts were incredibly painful to write.

However, one of my cohorts said that he blogged for nobody else but himself- mostly as a point of reference for a later date. I absolutely loved this idea and have ran with it since.

Granted, my blog may look pretty random these days as its sprinkled with things that I'm learning and things I want to use for reference, but I also don't have to look up the esoteric things that you don't do often (such as setting up symlinks).

I wouldn't discount the power of a blog. Even if its not prolific or life changing, it is a good example of what you're working on and learning, which will inevitably come in handy somewhere down the line for you.

One full day a week is a great start, we had "refactor fridays" at one of my previous jobs.

I'd say for me, its when I can see that I can make something more efficient or spot obvious mistakes or slipshod code. So it could be once a week, once a day, once an hour.. or months later when I come back to something and see that I could approach it differently.

Regardless, I like where your thought process is going on this, that you're always looking to make your code a bit better whenever you can. :)