Ask HN: How do you manage UI/UX for your side projects? - <AUTHOR> Like a lot of you I have mostly worked in back-end or systems software. My CSS/UI/UX skills are very minimal. I get disheartened by how my project looks or don't start the project because I fear it would look crap or I despise doing the UI/UX work.<p>How do I solve this? <comment><USER3> A lot of engineers have the mentality of "engineering is hard, but design is just whatever some color matching and styling".

I'll prob. be downvoted but here's my honest opinion: I think you'll gain a lot career-wise to learn about UX and UI. You'll be able to understand products in a deeper level from the customer's side and will then be able to make better decisions as an engineer. You'll also have a much easier time working with designers and PMs. And, of course, your projects will feel and look great.

IMHO, the biggest bang for the buck you could learn is:

      - Visual hierarchy (I.e. the same way you divide your code in modules and functions, you need to divide the visual space in a clear hierarchy).

      - Basic on typography (It makes a big difference even if most people don't notice it)

      - Understanding what's UX (I.e. reading "Don't make me think"). Just "caring" and "thinking" about UX will improve designs, even if you don't have much experience.

      - Basic of color theory; How different colors mean different things (Branding-wise or for alerts/errors/warning).

Reading material design from Google [https://material.io](https://material.io) is a great start. You may not like the UI of it, but the UX and explanations of _why_ things are this way are really interesting.

<comment><USER4> I actually took a 3-month crash course on Visual Design because I was weak in that area (as a front-end developer). Probably one of the best professional investments I have made. The course taught me basically the above list.

I would add knowledge about grids and negative spacing to the above list.

<comment><USER5> Sorry for the plug, but since others are asking for an introductory resource, I wrote a short course on UI Design myself not too long ago. They are just 17 short tutorials: [https://www.commonlounge.com/discussion/d5bae026ef6e4f949e63...](https://www.commonlounge.com/discussion/d5bae026ef6e4f949e63171e7f6890b3)

<comment><USER6> Link hangs on 'LOADING..."

</comment></comment></comment></comment><comment><USER7> I stick with a few basic guidelines:

* Sketch out the idea on literal paper before committing it to working code. Paper is so much easier to get 'working'.

* Borrow visually from other sites that I like and have similar intent. I don't have the time on side projects to go crazy breaking new UX ground. (And users probably don't want that anyway.)

* Keep the idea simple and uncluttered. Maybe a specialist could get away with fancy stuff, but I'm not a specialist.

* Try to offload functionality into the back end. If I can simplify the user experience by making the back end more intelligent, I do it.

* Be very cautious about introducing technical complexity. Usually for side projects, I have a specific goal I want to achieve and limited time in which to achieve it. I'd rather not spend that time messing around with some fancy framework, unless I'm convinced I need it to satisfy my goal.

* Reuse from my other work.There are a lot of aspects of, say, a website, that don't have to be uniquely redone for each. So it might quickly become cost effective to factor out something like a login flow UX. (And has the benefit of offering some degree of consistency across projects...)

<comment><USER8> Several of these resonate with me and align with my past experiences.

* Create a paper/whiteboard design first.

* Borrower from other sites/past projects.

* KISS / minimize technical complexity.

Some might say Vue.js is technical complexity but after investing time to learn the basics I would say that I'm reaping productivity gains. Honestly it's great to work with and making UI's that have some degree of a pleasant user experience.

Here are two projects I've worked on recently where I've used Vue.js. The first is via Vue-Cli and a true SPA app that is hosted through Amazon S3 and CloudFront. The second an ASP.NET Core app hosted on Heroku as a container. In both cases, Bootstrap has integrated very well with the Vue.js app.

A driving factor for creating these has been to share my Vue.js knowledge with others.

* [https://github.com/ryanrodemoyer/ParlayTools](https://github.com/ryanrodemoyer/ParlayTools) \- available @ [https://d3itp7yns2kqcy.cloudfront.net](https://d3itp7yns2kqcy.cloudfront.net)

* [https://github.com/ryanrodemoyer/AccrualCalculator](https://github.com/ryanrodemoyer/AccrualCalculator) available @ [https://accrual-calculator-prod.herokuapp.com](https://accrual-calculator-prod.herokuapp.com)

Good luck!

<comment><USER7> > Some might say Vue.js is technical complexity but after investing time to > learn the basics I would say that I'm reaping productivity gains.

After thirty years coding, I probably shouldn't admit this, but it's still a significant challenge to make these sorts of priority calls. This is even more true for side projects, where they're resource constrained by definition. It's easier to take risks and pay upfront costs when you have 40 hours a week to invest in a codebase than when it's only one or two hours a week.

Mainly because I find it efficient for me to use, I tend to do most of my side project work these days in Clojure. I think a bit part of why it makes sense for me to do that is that I'm carrying in a bunch of previous experience in Lisp style languages, and Clojure aligns fairly well with the way I think about building systems. It also aligns well because most of my professional experience is in the JVM, so there's a fair amount of carry over.

The reason I mention this is that I think it illustrates how subjective the notion of complexity can be. For me, in my context, it's simpler, but it's not hard to imagine it being absolutely the wrong choice for someone else.

There's also the problem of when it makes sense to pay certain costs. I have a little todo list application I've used to run my life for the last few years. My initial design idea was to keep it simple with exclusively server side rendering of the HTML. This focus on a simple approach has generally been a positive thing, but there are increasingly often features I'd like to add where the existing architecture doesn't work. The path forward is easy to describe - port to an SPA - but the effort involved is more than I have time for. My short term unwillingness to pay the cost of building an SPA four years ago is coming back to haunt me, just a little bit.

My solace there is that I probably wouldn't have actually had time to build the thing in the first place had I taken the time to make it an SPA. (And at least now I know that if I ever do make the port, it's likely to be something I actually use.)

So not an easy set of decisions to make, by any means.

> A driving factor for creating these has been to share my Vue.js knowledge > with others.

This is another aspect of side projects worth considering. Sometimes they're built to solve a 'business problem' and sometimes they're built for pedagogical reasons (either self or others). That can have a dramatic impact on architectural choices, etc.

</comment></comment></comment><comment><USER9> I'm a ux designer and a professor in hci. It looks like there is still a lot of confusion between UX and UI. UX is not just what concerns the interface. UX is a process with different phases:

\- an exploratory phase, where the designer interviews the stakeholders, analyzes the current product (if it is a redesign), makes a benchmark of the competing products and services;

\- a research phase, where the designer involves actual or potential users to understand their needs, goals, their knowledge, their behaviors; she does interviews, observations, and uses methods like the laddering, the free listing, the card sorting, the task analysis and so on

\- the raw results of the research are documented in a number of deliverables:

      * personae
      * scenarios
      * customer journeys / experience maps
      * conceptualizations
      * taxonomies and navigation trees

\- the research is translated into the design of the product, producing wireframes or low fidelity prototypes, designing the macro and the micro information architecture, the interaction, the navigation; \- a design system should be adopted and / or developed, identifying the components, the colors, the typography, the tone of voice \- a high fidelity prototype applies the design system to the low fidelity prototipes \- everything should be tested with the users, in different moments: competitive testing (to test the competitors' products), exploratory testing, confirmatory testing; prototypes should also be evaluated to verify the conformity to the standards and to the design system / style guides;

This is UX design (different experts will describe it in slightly different ways, but the structure remains the same).

I'm obviously aware that this process would be a big effort for a side project. But it's very important to keep in mind that this is the right approach, and in the long run, the process will decrease the risk of failure.

<comment><USER10> Good set of guidelines and thanks for sharing. But in reality not all projects can afford to go through this routine.

The following is what i believe works for most time sensitive projects. It would be better to set a top level vision for the UX and give it to proven people to deliver. UI/UX is something that everyone in an organization can have an opinion very easily so your goal should be to satisfy end user and not everyone in the company. Take it as early as possible to beta testers and if your initial vision for UX is solid - it would take few iterations to get it correct.

</comment></comment><comment><USER11> If we're talking webapps, I tend to go to [https://themeforest.net](https://themeforest.net) and buy HTML themes developed by professional designers. The cost is MUCH cheaper than hiring someone to develop the UI for you, and a lot of them are extremely high quality.

<comment><USER12> I will sometimes buy themes before I even have a project in mind. For $20-60 you can't beat something that just works and now you just need to inject your code into it.

<comment><USER13> But if you get to charge someone it is not so cheap...

</comment></comment></comment><comment><USER14> >Like a lot of you I have mostly worked in back-end or systems software. My CSS/UI/UX skills are very minimal.

I never came up with a special talent for UI/UX. I remember I had a friend who was web developer he was insanely talented , could make a sexy landing page in just a few minutes.

For me this has always been impossible , I immediately start thinking about optimizations, legacy browser support , CI/CD etc... Typical issues of system driven person....

A few years ago I realized I wasn't like him and it was « Okay ».

I found out I can't do « many side projects » at once nor frequently.

Instead I only build one project at a time but I do it properly. I design things out in Photoshop or Adobe XD where I usually spend weeks before coding anything.

The goal is really to be working in pure V Cycle where you don't start Prototype unless you are done with the design.

Been using this technique ever since and I haven't been frustrated ever since. Would recommend to try it with any design software that you like to work with.

</comment><comment><USER15> The mistake that a lot of people make is thinking that it's a code/framework/tech problem it isn't.

Start by putting the technology aside, it only serves to bring your idea to life. Which bring us to the ideas...

Ideas are never 100% original. I challenge you to imagine an object of a shape and color not made from anything you've ever seen... it's impossible. What I'm saying is that you need to take inspiration from various sources. From this you'll be able to bring these elements together in a new way.

So I'd suggest looking at [http://collectui.com/](http://collectui.com/) and [https://colorhunt.co/](https://colorhunt.co/) to start.

Come up with a design in Illustrator/Designer and pretend HTML CSS REACT etc don't exist (ignore them).

Finally look at what you have created and realise you can bring that to life using literally any technology you like.

Mock out your components in HTML CSS.

create react/vue/angular components and port your previous HTML/CSS into these.

And Voila!

<comment><USER16> > The mistake that a lot of people make is thinking that it's a > code/framework/tech problem it isn't.

A good framework and set of components can help a lot though. I'm building a mobile app at the moment using flutter, and the material components in that make it so much more efficient to build nice looking things that work well. Animated transitions between screens for instance can be really fiddly, but flutter has support for some useful ones out of the box using 'hero' widgets.

</comment></comment><comment><USER17> I've discovered that [https://tailwindcss.com/docs/what-is- tailwind/](https://tailwindcss.com/docs/what-is-tailwind/) fits me best as a way to do UX/UI as a backend person. Feels like functional programming with well-defined, limited number of building blocks, whereas normal CSS styling always seemed like endless amount of options. Also the docs are really great with some ready-made patterns. No idea if it is for everyone but I enjoy it right now.

<comment><USER18> Frameworks like these are terrible for your document size and page load performance once your project scales.

Why would you write anything that can't scale if you can avoid it? Whether or not you're looking to turn your pet project into a SAAS business is a moot point when you can get scalability for free with other approaches.

<comment><USER17> It seems verbose yes, but since everything gets minified + gzipped anyway and there is no additional js it is actually quite light in the end. If the parent has difficulties with UX/UI, it might help to look at it from a different angle.

</comment></comment></comment><comment><USER19> Here is what I typically do:

\- Draw out a design using Sketch, draw.io or any other similar tool.

\- Find a color scheme, I typically google for "flat UI colors" since I like them most. Adobe color wheel is also a great tool for finding complementary / shades of colors: [https://color.adobe.com/create/color- wheel/](https://color.adobe.com/create/color-wheel/)

\- Then I start prototyping my ideas, typically in react, using a CSS-in-JS lib such as styled-components, this allows for quick iteration.

\- I do research. For example, I look at how other websites or UI component libraries do things. Examples are material UI, ant design, semantic UI.

The most important thing is refinement. You start with a rough sketch, prototype in react or HTML and then start playing around with the CSS. Learning all the css attributes definitely helps. Don't try and learn them all from a list, but just google them as appropriate and you'll start picking them up. For example, you might think: "How do I center the children elements both vertically and horizontally on different screen sizes?". A quick google search will suggest to use display: flex, justify-content: center, and align-items: center.

<comment><USER20> To add to this, another great design tool is Figma – it's browser based, but just as capable as Sketch. Although working in the browser often feels like a toy, the bonus is that it's cross-platform unlike Sketch.

Also, for color help, the Material Design Color Tool is a fantastic little site for helping develop color schemes quickly and visually. [https://material.io/tools/color/](https://material.io/tools/color/)

</comment></comment><comment><USER21> HTML & CSS is a commodity skill, and most of its mundane parts are going to be automated away soon. Either through a design-to-code workflow like what I'm working on now ([https://protoship.io](https://protoship.io)), or with integrated tools like Webflow & Modulz.

There are folks who're able to design in code (Basecamp style), folks who're only able to design in a drawing tool and does not know CSS at all (the Dribbble crowd), and the unicorns that I'm so jealous of who're able to play in both courts masterfully.

But knowing design doesn't have much to do with tools - HTML/CSS or Sketch. I've observed folks from all three categories, and my singular take-away was practice, practice, practice. Some people have an aesthetic bend that gives them an advantage, but most of us can build a basic understanding by being deeply interested in the craft and putting in the hours. Search for "how to be a designer", there is a rich array of resources. Pick a book like The Non- Designer's Design Book, an online course like refactoringui, and a DailyUI challenge. Start deliberate practice. Give it a few hundred hours.

</comment><comment><USER22> For getting some UI drawing skills go to:

[https://bezier.method.ac/](https://bezier.method.ac/)

Then buy a copy of Sketch and draw a couple of phone screens (by hand) [1, 2]. The idea is to do it by eye, so no cheating by using color pickers or measuring the pixels, do it by eye. Draw all the icons. In actual projects you can use icons but now you have the power to create your own.

Then do this one (the image)[3]. Now you should be on the level that you could draw any figure well enough as long as you have a reference image for it.

In my opinion regarding UI design there's no need to go further than this if it is purely for your own projects. The idea is to create a nice looking UI, not photo realistic images by hand ;)

[1]: [https://www.invisionapp.com/inside-design/design- resources/d...](https://www.invisionapp.com/inside-design/design- resources/do/)

[2]: Sketch quick start: press A (for artboard) to plop down a screen. With R (rectangle) and O (oval) you can create simple figures. With V (vector) you can do the pen tool thingy that you've trained at bezier.method.ac. The rest should make sense on its own.

[3]: [https://www.invisionapp.com/inside-design/design-systems- val...](https://www.invisionapp.com/inside-design/design-systems-value/)

</comment><comment><USER23> I learned design + frontend engineering together. My side project turned into my full-time startup: [https://www.cacher.io](https://www.cacher.io)

The best advice I can give in terms of managing UX:

0\. Get Sketch ([https://www.sketchapp.com](https://www.sketchapp.com)) and use one of its UI kits ([https://www.sketchappsources.com](https://www.sketchappsources.com)) to lay out your designs. While you should pay attention to visual details, you won't need to lay out every state since you won't be showing these to anyone else.

1\. Build your project with one of the established frameworks (Material is pretty good). This will give you a sense of visual hierarchy and force you to think about why elements are placed where they are.

2\. Introduce your own modifications and controls as needed. Even with a framework, you'll eventually come across a use-case that isn't readily handled.

3\. Keep your modified framework in its own folder/repo. Continually update it as visual standards/technologies change. Doing this will cut down on the amount of re-work necessary when you're starting new projects.

<comment><USER24> Do you have any suggestions on how to learn Sketch? I've downloaded it but don't really know how to get started. YouTube videos? Or, are there people writing about using it, starting from the developer mindset?

</comment></comment><comment><USER25> This used to be a pain in the ass for me, but the beginning of this I rewrote everything from scratch including the UI. Now I have everything automated behind a build. All of my options, their configuration, and all corresponding documentation is built from a single simple config.

* Here is the site - [https://prettydiff.com](https://prettydiff.com)

* Config - [https://github.com/prettydiff/prettydiff/blob/master/api/opt...](https://github.com/prettydiff/prettydiff/blob/master/api/optionDef.ts)

To automate this properly so that user performance is fast and maintenance is simple you don't need any frameworks or tooling. You just need a good plan and a proper organization of things.

About 80% of the user interactions are built from automation. There is some manual wiring that has to occur for various things where interactions are unique to a given option. The manual interaction stuff wasn't too bad when I wrote the code this past spring and it requires almost no maintenance. All the stuff that would be a pain the ass to keep up with is fully automated.

</comment><comment><USER26> The best solution is to learn graphic design. Most engineers make the similar mistakes when starting out, so here's a cheat sheet:

* Your colors are too saturated, desaturate everything. (If you're using LCH, make 50 chroma your default for something that's "colorful.")

* Use more padding, more whitespace, and bigger fonts. Increase it until you're starting to get uncomfortable, then increase it just a little more past that.

* Remove everything you can remove, or if you can't bare to do that, relegate it to a dumpster page like an "about" section. Use the extra space this frees up for more whitespace.

* Whenever you think something needs more X, consider making everything else less X instead.

* If you're using LCH, you can do color theory by the numbers instead of eyeballing it. e.g. add 180 to the hue to do complimentary colors. This is not true of HSV.

* Establish a consistent visual hierarchy to group your content. Expect this to be the hardest part; even the best designers brute force this. The top of your hierarchy should frequently be the least emphasized part.

<comment><USER27> > Remove everything you can remove

This reminds me of my favorite design quote:

"Perfection is attained not when there is nothing more to add, but when there is nothing left to take away."

— _Wind, Sand and Stars_ by Antoine de Saint-Exupéry, early French aviator and author of _The Little Prince_

</comment></comment><comment><USER28> I don't; my side projects have the shittiest UIs ever.

For things that make money, I just hire a professional. There have been times where I have put a lot of personal time into improving a UI. What ends up happening is that that time ends up being a total waste of time because the UI/UX professionals are able to do the same work in a fraction of the time. It's almost never a waste of money, either.

</comment><comment><USER29> This is definitely a problem for a lot of people. When I was in grad school, I used to go to Hackathons a lot, build a cool working backend, but a ugly front end which just does the job and I never won anything until I forced myself to learn Angular and used bootstrap themes to scaffold a basic UI/UX.

Unless you have a friend who happens to be a front end engineer and who wants to work on side projects along with you, the best solution is to learn just enough to get by. Learn react or angular and learn how to customize existing free themes available out there.

</comment><comment><USER30> I started with C++ and Arduino, then learned all the way through the basics of design. Including UI, and now I'm learning/improving User Testing (UX) since I have learned the more technical parts of UX long time ago. Graphic design is still out of reach for me though, since I know I'd have to spend hundreds of hours learning all about design to use a small part in web (which is not a high enough ROI for me). I have a very good friend that is very awesome at it, so in case of need I can always go to him.

It's been a great ride, and unfortunately impostor syndrome hits from time to time both on the front-end and the back-end (quite ironic). Though it's been fairly mild/easy to handle, I've had a lot of external validation through the years.

If you decide to learn it as your main learning focus (let's say, 15-20h/week), you could become fairly decent in 6 months-1 year. Then you can become quite good within 3-4 years. There are quite a few branches and ways to go about learning though, so _if_ you want to learn I'd recommend searching and getting informed, but I deeply believe in the quantity above quality: [https://blog.codinghorror.com/quantity-always-trumps- quality...](https://blog.codinghorror.com/quantity-always-trumps-quality/)

Alternatively, hire me :) [https://francisco.io/](https://francisco.io/) | [https://picnicss.com/](https://picnicss.com/)

</comment><comment><USER31> I think it can be distilled to three key things:

1 - Learn the basic principles (see d0m's comment).

2 - Borrow/copy like crazy from others who are better than you.

3 - Be brutally honest with yourself and know your limits. You don't need to be a brilliant designer to achieve that magical "good design" effect--you just need to get the fundamentals right and avoid mistakes. Until you develop some instincts, most of the ideas you have won't work, so you need to be willing to throw out what you've done and try again ad infinitum. If in doubt, take it out.

Last point: I think it's close to essential knowledge at this point for building viable software products. Like it or not, people judge by appearances, and good design is one of the best levers available to make people take what you're doing seriously. It's one of the top things that can take you from being perceived as a "hobby project" to being perceived as a "startup".

It's not easy to learn, but it's not really that hard either in the scheme of things, and it pays massive dividends. Even if you're using templates or paying someone else to do it, you still need to be able to distinguish the good from the bad if you want to avoid the (often subtle) mistakes that kill the perception of quality.

</comment><comment><USER32> I'm not too bad at front-end development (especially if someone else does the design and mockups), but I don't have great design or UX skills.

I really like starting with balsamiq for mockups, because I can figure out the functionality and don't have to think too much about the design. And then I like to use a UI framework with a set of pre-built components, and maybe a theme. Bootstrap is great for that, and you can get some great themes so that it doesn't look like a "bootstrap" site.

My favorite UI framework is Ant Design [1], because they have an amazing set of React components that are really nice to work with. I was blown away when I discovered Ant Design Pro [2] (which is free!). It's an "out-of-box UI solution for enterprise applications". Basically a fully featured dashboard built with Ant Design, including things like authentication pages, charts, etc. Everything you need for a side project, and it's easy to strip away all the stuff you don't want.

[1] [https://ant.design](https://ant.design)

[2] [https://pro.ant.design](https://pro.ant.design)

</comment><comment><USER33> Sounds like you're on the right path in that you have a genuine desire to create great looking products. This means you have a respect for design, which is hugely important.

I used to be a back-end guy (I once co-authored a book on an ORM and just love middle tier and db shizzle). I had a huge appreciation for products that looked and felt great, but only had the back-end skills. I had a genuine desire to build skills in design so I could make better products.

If you want to take some short-cuts to build great looking stuff I'd do the following

\- Build a mood board of stuff you think looks great. Set your own standards bar.

\- Play around with Sketch or similar to learn how to get the look you like (this will make you think about UI design problems). This might take years but you have to start somewhere.

\- Read "Design of Everyday Things" and "Don't Make Me Think" and a few other design classics. The principles stand strong.

\- Get help from designers to bridge the gap between your skill level and where you want to be. When I started my company, I'd find designers who had a visual style I liked and paid them to help out.

</comment><comment><USER34> I use a framework - I like Semantic UI a lot, although I'm not sure it's being maintained. When selecting a framework, I like to resize the browser to see how responsive it is, and look for text overlap defects at different sizes as a sign of library quality.

Adobe XD is also a free prototyping tool - I would go through a tutorial or watch a few youtube videos of people working to get a feel for it.

</comment><comment><USER35> I could write a short tutorial here how to do basic styling but I don't know will you gain anything from it. Having done HTML/CSS/SCSS in between my full- stack JS/TS work, instead I'll just list some of the things that I've learned from doing web UI/UX. Maybe you'll get some insight from it, people have mentioned other great tools like Sketch which are great but these are some practical tips.

* Space elements using flex-box. Use position attribute only when must.

* I've mostly ditched classes for Styled Components, but if you do use classes try to get most of the BEM-syntax and SCSS. Try to avoid id and element-wise selectors for styling.

* Use CSS preprocessor like SCSS. Makes your life easier. `&` especially.

* Use margins to position elements in relation to each other. Padding to maintain or inflate element's size. The difference between margin and padding isn't massive, but try to stay consistent in your styling.

* Use (as general advice) light background color with more distinctive primary colors, emulate your favourite sites' style to hone your visual skills.

* Don't overdo it even if the UI widget you found looks cool. For users the novelty will soon wear off and you'll be better off with something simpler and more functional.

* Also don't stress about styling, just maintain a distinct style that is simple and working and you'll be good until you can hire your own designer. Vast majority of start-ups with their fancy UIs are mostly just pretty balloons filled with air. Maybe it attracts some people, but most people (myself included) are happy with simpler layouts as long as they are easy to use. Sure if the site is indisputably ugly it can be jarring but you get the point :). Note that pretty visuals != good user experience.

</comment><comment><USER36> One thing I always like to go back to is Ira Glass's video on taste: [https://www.youtube.com/watch?v=X2wLP0izeJE](https://www.youtube.com/watch?v=X2wLP0izeJE)

In a nutshell, that feeling you get where you believe your projects look crap? It's because you're seeing the disconnect between what you can achieve now, and your taste that's informing what "great" is.

It's a bit of a double edged sword in that while you'll likely not be truly happy with a project anytime soon, that disconnect means you'll also be able to constantly strive as you recognise supposed flaws in what you've created.

In the end, all you can really do is just keep at it and over time, that gap will hopefully close as your skills allow you to create what your taste envisions.

That's the dream anyway, haha.

</comment><comment><USER37> I highly recommend using semantic-ui, which has a fantastic react port [https://react.semantic-ui.com/](https://react.semantic-ui.com/)

I used to use bootstrap, or download themes on themeforest. But since discovering Semantic, I've had a much easier time building front ends. It also serves as a guideline -- when I can't find something I want in Semantic, I have to ask myself "Is there a better way to do what I'm trying to do that _is_ in semantic?"

Also, with anything, it's a matter of putting time into the frontend. If you spent as much time on the frontend as you do on the backend, it would likely look better. It's easy to rapidly prototype a frontend just to make your idea work. Once it works, you move on.

<comment><USER38> Came to say this. Semantic UI react has almost everything you require to build good looking UI for non designers.

</comment></comment><comment><USER39> Keep the UI simple. Find a free/cheap template, throw it up, and add your code. But then... use the app. Be aware of when you are clicking multiple times to finish a task, when you have a small hesitation to parse your own icons and menus, when you jump all over the app to get something done, etc. Those are small inefficiencies to you, but broken UX to someone else. Over time, you'll have your own annoyances with the app. Fix those. And when you get real users giving you nitpicky complaints about the UX, treat them as serious breakages of your app.

Over time, you'll have a simple, usable app. And that is far preferable than a beautiful, shiny, but unusable app.

</comment><comment><USER40> I know a bunch of UI/UX folk, and I tend to just ping them if I have anything to design. Works quite well - many people will do a lot of short term work in exchange for pay.

</comment><comment><USER41> I have gone through the same thing on many of my projects. Some projects however do get to a better level of done on the UI. My greatest source of discouragement is the expected effort it will take to evolve the UI to a desired state. This comes about because making front end changes seem to take a long time just to look up some CSS combination etc, and it still looks very basic.

What I have come to realize though, is that if you keep at it, the aesthetic gains get bigger and better with each additional change and overall it doesn't take as long as initial progress rates would have to think.

I think the big thing is to value it as a user. Often if I make something for my own use, it's considered done when it works. To show someone else, it needs extra effort of value to others but not myself. When completed, of course I appreciate and am pleased by the outcome but would not have done it for myself. I think it's this difference between effort and perceived value that's demotivating. Practice reduces effort, but we have to also internalize the difference a nice UI makes.

Other than that, use a framework that has many components, or even better entire component set libraries available. Choosing a component set and tweaking a theme can do a whole lot in short order.

</comment><comment><USER42> IMO you need to start loving UI/UX to get anywhere. It's actually interesting and with modern frameworks is not too hard for a decent programmer to pick up. Getting out of your comfort zone and learning new paradigms, solving new class of coding challenges etc will also make you a better backend engineer. Think of it as a good investment.

Second step - twitter bootstrap and admin templates for it are the little known secret of fast and cheap and good looking UI. Good templates are under $50, recently some nice ones started popping up on github under open source licenses.

One aspect that is hard for me and probably requires another half of the brain is making it "pretty" (or graphic design). Good news is there are tons of UI freebies, UI kits, free app templates shared on behance and dribble. Basically it's pretty app designs created by people who don't have skills to convert them into code. So they give that stuff away for free. Taking one of those goodies and using for your side project will make your project stand out without dropping a cent on professional designers. I always recommend freebies designs for MVP even when it's more than a side project.

<comment><USER42> And also google "best google webfont pairings" pick one, apply it to your bootstrap site with only 10 lines of CSS and voila the page suddenly feels fresh and cool

</comment></comment><comment><USER43> First decide if you just want it to look nice, or if you want it to work nice. For the first there are already lots of suggestions here.

For the second, do you have some users or potential users (right needs, skills, etc.) nearby? Get them to use your software and watch them. Or use screen sharing to do it remotely, along with an audio link. Get them to talk through what they're doing. Watch to see the trouble spots, ways they approach using parts of the software that maybe don't match how you expect people to try to use it. Does the way your user interface is organized help or get in the way? Do the cool widgets you used make sense to people other than you?

Start this early, with the crappiest thing you can get up and running visually. Don't wait until you've invested huge amounts of effort in making things look just so. This may lead you to deeper changes but ones that might make the system a whole lot better.

Or, you could wait until you've put in so much effort and baked in so many decisions about how the system should work that you're not about to make any structural changes. Just put some lipstick on the pig.

</comment><comment><USER44> Cheat.

For the layout / overall look pick a good off the shelf theme.

For UIs / micro interactions / content elements, see how other people have done it and copy them.

</comment><comment><USER45> Disclaimer: I'm a frontend/fullstack dev. One of the methods I use is browsing other sites and taking inspiration. You can even inspect their elements if you'd like to see how they the style (don't copy paste!).

Other suggestions: \- Team up with someone with some ui skills

\- Use a css framework: [https://github.com/troxler/awesome-css- frameworks](https://github.com/troxler/awesome-css-frameworks)

\- Choose a color scheme and add some margin and padding to everything and stick to the scheme.

\- React component libraries are becoming much more general purpose and easier to use. If you're up to sinking a few hours into it, try create-react-app ([https://github.com/facebook/create-react- app](https://github.com/facebook/create-react-app)) and then use a react component library like material ui ([https://github.com/mui-org/material- ui](https://github.com/mui-org/material-ui))

</comment><comment><USER46> I've been exploring the world of UI/UX recently, and I enjoy it.

It would be helpful to pickup a design tool. I've used figma and sketch, but I'm finding figma to be really helpful.

\</comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>

How I think of things is like this:

1\. Either my entire day is dedicated to design

2\. Or its dedicated to programming

\</comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>

I find it difficult to swap between design / programming frequently. One requires creativity / looking at lots of things for inspiration. The other requires a more logical mindset.

I would go further with this analogy, there's (4) main roles in webapp development

(1) UI/UX/Design

(2) Frontend Frameworking (React,HTML/CSS/JS/mocking things up, etc)

(3) Backend development (Firebase, nodeJS, etc)

(4) Database development / sysadmin / everything else

Try and only focus on one or two or those things everyday. You can skip (1) if you are emulating a website or building something with a heavy backend MVP. (3) and (4) can be mostly skipped if making a small project in firebase. (2) can be skipped if you use a CSS framework, etc.

</comment><comment><USER47> You should not be inventing ui/ux for an early web application at this point.

Almost every possible control and behavior you need has been figured out.

On all my new projects I start with a commercial bootstrap wrapper. Wrapbootstrap has a lot of great ones for under $30. [1]

The templates come with everything from basic css to the newest wizbang stuff.

You can ramp on bootstrap layouts quickly because you can copy entire ui elements from the demo pages.

You can also build cascading templates pretty quickly using the examples that come with it since it is always the same layout largely.

I would not recommend trying to become a ui expert as top comment suggests, because that takes a long time. Instead, build with someone else's great work in a bootstrap wrapper and learn as much as you need to move your project forward and no more.

[1] [http://wrapbootstrap.com/preview/WB0N89JMK](http://wrapbootstrap.com/preview/WB0N89JMK)

</comment><comment><USER48> Use a service like [http://draftss.com/](http://draftss.com/) or [http://manypixels.co/](http://manypixels.co/) They provide a good value for the price. Alternatively, hire a designer accordingly to your budget

</comment><comment><USER49> Cop, copy, copy.

I taught myself about color palettes, gradients, margins, and typography by carefully hitting inspect element on websites I love. You'll get an idea of font sizes that make sense for headers, tables, written content and more. Inspect buttons to see how designers use shadows or changes to indicate function.

Once you start copying enough and read a book or two on design it will start making sense. Pay obsessive detail to how a payment flow or navigation reacts on a site you love when you do something wrong.

Less is more and start by building out simple forms that feel slick and intuitive. Copy the landing page of a website like Strava. Copy the landing page of a SaaS product you love. Copy the layout and typography of the Stripe documentation. You'll eventually have enough tools to start making more informed decisions when you are not copying.

</comment><comment><USER16> I'm building a mobile app using flutter, which has so far been an excellent experience. They've announced development of a web version of it - <USER2> ([https://medium.com/flutter-io/hummingbird-building- flutter-f...](https://medium.com/flutter-io/hummingbird-building-flutter-for- the-web-e687c2a023a8)) which I'll be keeping a close eye on. Not only is it a fundamentally productive toolkit to use, but sharing both business and UI code between all frontends (desktop, mobile and web) would be wonderful.

I've also heard some positive things about elm-ui ([https://github.com/mdgriffith/elm-ui](https://github.com/mdgriffith/elm- ui)), which is on my todo list to investigate.

</comment><comment><USER50> Jeremy's Web design in 4 minutes is a crash course on how to build up the different elements that go about in web design : [https://jgthms.com/web- design-in-4-minutes/](https://jgthms.com/web-design-in-4-minutes/)

</comment><comment><USER51> My side project launched on HN about 4-5 weeks ago:

[https://getpolarized.io/](https://getpolarized.io/)

It's basically an Electron-based document manager with annotation and Anki flashcard support.

My background is cloud infrastructure so I'm really not an expert on UI / UX.

What I've been doing is that I use off the shelf UI toolkits that happen to look good aesthetically and have decent UI / UX already.

I also just try to do things that are 'standard' and not argue or have too much of my own opinion. I'm not a UI expert so I just do what the UI experts do...

Right now I'm using React and Reactstrap but Material UI also looks decent.

I also have a whole directory of screenshots I've been saving with really rich a and nice UIs that I can borrow ideas from.

Background colors. Layout designs, etc.

</comment><comment><USER52> A lot of good suggestions here already. I agree with another comment that UI/ UX is very important, especially if your project is intended to be used by the general public.

But UI/ UX is hard and it is very easy to get sucked down a vortex trying to get something to be exactly as you envisioned . And this drain on your mental energy can cause you to give up projects mid-way.

On the other hand, i always get a massive sense of progress when i'm able to interact with a feature through a UI.

I too despise(d) UI work like you when i spend a lot of time on things that i expect to be simple. The way i approach it now is to work with the mindset that the UI only has to be good enough. It does not have to look shiny and polished as long as it is able to deliver the value you are creating with your system.

</comment><comment><USER53> Visit a site like [http://behance.net](http://behance.net) and find layouts that inspire you. Spend part of your side project time replicating those styles and understanding/learning why the design decisions were made for that project.

Remember, design is problem solving. Art is expression.

Good design doesn't have to be pretty, and prettiness doesn't mean a design is good.

My assumption is your side project is for learning or enjoyment's sake. Learning design is a great way to spend that time. If the side project is purely for economic gain, instead spend your time refining your taste for design, learning how to articulate your taste, and recruiting designers who share a similar taste.

</comment><comment><USER54> Frameworks like tachyons and bulma will give you the tools to create elements that don't look terrible, but imo UX just takes practice. (I'm using tachyons on my side project [http://oozesaga.com](http://oozesaga.com) (the UX is still pretty bad))

The great thing about practicing this as a developer is that you will eventually find a sweet spot where you can identify UI that is cheaper to build, but is also effective (vs. having to do pixel perfect designs where the last 10% doubles development time).

And, in the end, mostly copying other sites that follow similar functional requirements will get you a long way.

</comment><comment><USER55> for UI, HTML5 Boilerplate will get you pretty far when it comes to organizing markup. Then you can start with something like Bootstrap and then build a theme when you're ready. There's some truly impressive pre-built bootstrap themes/templates out there too but they take a lot of work to integrate into your project.

As for UX, if you have a spouse/partner/SO ask them to use your project and take their feedback seriously. Getting actual people to use what you've built is the fastest way to a decent UX. You have to set aside your ego and let the users dictate how they want their experience to be. It's non-trivial.

</comment><comment><USER56> I know this question is about web apps where there is little in the way of "standard," but if it's a desktop or mobile app, please, please use standard, system provided controls and menus, the generic system font, and well-known button icons. Don't try to invent your own. Your users will thank you because they will know what everything does without having to figure it out. Plus, on many platforms, straying off the path of standard controls can lead to 10x or 100x the code. Just don't do it.

Spend that saved development effort on fixing bugs instead. A great app with a boring UI is better than a buggy app covered by a beautiful coat of paint.

</comment><comment><USER57> Is it a project where one of the most important aspects of how it works will be the design, if so maybe you can trade with a designer or even pay one for some help. If it isn't the most important thing try to find a theme or example in a common framework that will be passable.

For example let's say you're making a project that will help companies manage real time logging of data more efficiently.

Once a basic level of design competence is reached pretty much nobody who is looking for something like that cares too much how your site looks. You could make a simple landing page with a bootstrap theme in a few hours.

</comment><comment><USER58> Check out: [https://refactoringui.com](https://refactoringui.com) from Adam Wathan and Steve Schoger. Comes out Tuesday (12/11) according to their podcast.

</comment><comment><USER59> >How do I solve this?

Develop an interest in design in general. It's a skill that grows with your level of immersion. It's helpful to have developed a taste before making design decisions, or even for deciding what to learn and who to follow.

You could start by reading about the history of design, especially where design started to emerge as its own thing from art in the early 1900s.

Knowing the history and political implications (man vs. machine etc.) is important, because many decisions, tastes and (especially typographic) choices of other designers may not make sense otherwise.

<comment><USER60> Any resources you can recommend for learning?

<comment><USER61> RefactoringUI series already mentioned is great for specific tactical tricks that are immediately applicable.

To develop a deeper understanding and taste, I would recommend "Design Basics" by Lauer & Pentak. I've studied and taught design from it and think it is a great introduction to the fundamentals. The latest edition tends to be overpriced as a general rule. I would go for one of the older editions. Personally, I don't think the content improved any after the 5th ed (which is excellent). Immersing yourself in that kind of content can give you deeper understanding of why specific suggestions from folks like RefactoringUI work as well as they do and develop sensitivity in perception.

<comment><USER60> Thank you. I appreciate the recommendations. Where was RefactoringUI series already mentioned?

</comment></comment></comment></comment><comment><USER62> [https://elements.envato.com/](https://elements.envato.com/) has a flat subscription with lot of resources you can use in commercial projects.

</comment><comment><USER63> Don't bother with UX/UI at the beginning. It's wasting your time and resources.

Focus on a problem you want to solve. Make your product useful. Make sure your product works and provides a value for a user.

If you (when you) succeed in above, then you can address UX/UI based on feedback and usage findings you will already have.

UX is overrated, at least in the beginning of creating a product. That's why the web is full of crappy products and derivated ideas which just look nice.

Just my 2 cents as a product designer.

(peace)

</comment><comment><USER64> Observe what you like and dislike about the existing interfaces you use. Try to emulate the former and avoid the latter.

UX/UI is HARD, it takes many iterations to get it right. So, don't get disheartened if the first several dozen attempts fall flat. Just keep on.

It' more efficient to do the visual design on paper, or some mockup tool. Forget whatever framework they're peddling at the moment, technology choice comes after you've decided what you're going to do.

</comment><comment><USER65> Use default theme of some tookit (e.g Bulma or similar) and don't change one bit anywhere. As soon as I even think I can change a margin somewhere it all goes to hell.

</comment><comment><USER66> This is my problem as well, I've started to take web sites I like the look of (like mobile twitter) and first drawing them by hand and then using plain html and css try and copy them pixel for pixel.

I'm copying images etc and buttons don't work because it is the layouts that I'm trying to get right.

I've learnt so much doing this that it has really helped.

Reading some css tutorials and learning css is a world away from having to find a way to get an element to appear in a very specific place.

</comment><comment><USER67> I shamelessly copy. I have a lot of respect for the UX and design people I work with, and I know those skills take hard work to develop even for people with talent. I know I'm never going to finish a side project if I force myself to acquire those skills myself before I do anything, so I copy existing designs that look good to me.

If a side project turns out good enough that I think it could be a real product, I expect I will try to find a partner.

</comment><comment><USER68> Adobe XD is part of their creative cloud offering and they publish themes and videos about the design process. It is really easy to mockup a real looking web page in XD, then use a favorite CSS framework to create it.

Also themeforest.net is great too, pharaohgeek mentioned that already, but that is also a great starting point as good themes look more like bootstrap documentation to give you a huge head start versus from scratch.

</comment><comment><USER69> You are right to be concerned - so many side projects don't gain traction due to simple UI issues putting users off.

1\. As other comments have mentioned - if you are willing to pay, a good designer will go a long way.

2\. Use a common component library with a custom theme so it is good code but not 100% the same as elsewhere

3\. Keep lots of whitespace between everything

4\. Keep it simple - good UX is about so much more than UI and feature creep is so often the enemy of good UX

</comment><comment><USER70> I was never formally educated in that field but I just try to make something I would want to use. Bragging: I've been complimented by a Xerox exec "this looks better than our software"

There is a lot more theory and practices than I will ever understand. But if you are not an expert, just ask yourself if you would want to use it. Not as a developer, but some random user.

</comment><comment><USER71> Since we have a lot of customers like you, we have been investing more and more in educational content about UX for non-designers. Check it out if you're interested [1]. It's all fairly new so we'd love feedback on it.

[1] [https://balsamiq.com/learn/](https://balsamiq.com/learn/)

</comment><comment><USER72> I would start with diagraming the overall process/workflow the app is enabling.

Increasingly the "user experience" transcends just the web app, and involves well timed SMS messages and notifications.

Once the essential UI is defined, I use Balsamiq to iterate on a design, then over-communicate specifications for an Upwork Freelancer to bid on.

</comment><comment><USER73> I try to use frameworks which contain building blocks, so I can just use existing functional elements (like Alert in Bootstrap, etc.) without having to come up with my own css rules.

Obviously, this works only if you don't need any custom elements, but I'm not a designer, so I just usually use what's available.

</comment><comment><USER74> I think buying themes or designs from marketplaces like themeforest works best for me, I then improve on those things by taking inspiration from similar apps or companies on how they are displaying certain information, navigation flows and try to mimic as much as possible. This gives great results.

</comment><comment><USER75> UX can be a product feature. Or can overlap them. Develop some fascination with what improves user experience and you will naturally develop the motivation to work on it. Separate it a bit from "just" design/UI in your mind, and think about the user's needs and their psychology.

</comment><comment><USER76> I would use a "Component" front end framework like Material-UI or Blueprint, that way you can avoid spending your time on CSS/JS issues and spend most of your time building the application. The downside is that your application will look like the component framework you select.

</comment><comment><USER77> Read Jeff Gothelf's Lean UX. It illustrates product mindset, shows the survey and analysis work that goes into creating a new product and where creating custom software fits into the whole process. Given this reference by a UX designer. Great read.

</comment><comment><USER78> For UI problems, grab or buy a UI toolkit, it's better than you trying to write one from scratch.

For UX, read about UX research and show your work to potential users, make them talk constantly and just listen, see them struggle. It's priceless.

</comment><comment><USER79> What I do --- Iterate.

If you have time, go through the versions of my single page app (single file, actually):

[https://gitlab.com/aksrikanth/flash- cards](https://gitlab.com/aksrikanth/flash-cards)

</comment><comment><USER80> I am in the same boat. I try to use the same basic look and feel and interface everywhere. I just use whatever formatting the framework comes with and then I might ask someone else to step in and give me css and logos etc later.

</comment><comment><USER81> Small addition to what everyone said - pick nice icons, a page with just text feels empty. A nice set of icons can change that. Many sites are made of just text and icons, and in such situation icons bear a huge importance.

</comment><comment><USER82> If it's a small project I'll use bootstrap which then I customize. For anything larger I just pay a web designer. He/she might also use bootstrap but their customization techniques far exceed my capabilities.

</comment><comment><USER83> Do basic stuff and tell everybody you're keeping it simple. See [https://pinboard.in/](https://pinboard.in/). At least programmers like it.

</comment><comment><USER84> Not affiliated, but if you're using rails, rapidrailsthemes is quite nice.

</comment><comment><USER85> Decide if you want to be a designer. If you don't, then hire one and make sure you pay them as well as you'd want to be paid. If you do, then do your equivalent of going to school for it.

</comment><comment><USER86> I face the same problem and honestly, design is hard. Even basic design skills are a lot of effort.

I try to resolve the shortfall using Themes on bootstrap and then freelancers to resolve ad-hoc issues.

</comment><comment><USER87> Bootstrap, so I have a consistent style. Any other equivalent library would do.

Palette generators, so colors will look good.

Simple interactions, to kill two birds with a stone: ease of development, minimize UX mistakes.

</comment><comment><USER88> For side projects, I always try and get as far as I can with a CSS UI framework, then ask friends for help. It's much easier to brief people if you have a woring prototype.

</comment><comment><USER89> Material Design standardizes visuals and mini-workflows that you can stitch together. The spec is easy to approach and every major JS framework has an implementation.

</comment><comment><USER90> [https://canvas.hubspot.com/](https://canvas.hubspot.com/) My best resource for reading about UI/UX.

</comment><comment><USER91> I'm very experienced at UI/UX and suck at programming, so I'm happy to help you out. (I might need your help too one day!)

Find me at www.mathlete.com

</comment><comment><USER92> I hire freelancers, If it's a small project I hire freelancers from Fiverr and for important things I hire from Upwork.

</comment><comment><USER77> Read Jeff Gothelf's Lean UX. Shows a product mindset and how to use that mindset to create great software products.

</comment><comment><USER93> Bootstrap. I just went for the most popular because i m more likely to find googable answers to my needs.

</comment><comment><USER94> Sans serif font, dark gray text on light gray background, massive padding and you are in.

</comment><comment><USER95> if it's just some fun pet project ill copy a color scheme from something i like. if it's for a company i'll higher a designer, who generally copies a color scheme from something he/she likes. :)

</comment><comment><USER96> Look at CSS of websites that you like and copy aspects you like?

</comment><comment><USER97> This is one of the major problems of founders who fail to realize that UI/UX is a critical aspect in defining the product's utility even at an initial phase. We worked out on providing feedback to founders who found difficulty in optimizing their UI/UX resulting in an improvement of conversion rate. I am a co-founder at [http://draftss.com](http://draftss.com) and we have shortlisted few important mistakes that founders did on their side projects that could make a significant difference in the purchase decision by prospective customers:

1\. Cluttering the website with too much data: It seems like a dire need for founders to put as much data as possible to explain their product better. But too much data can backfire confusing the customer in understanding what your product is all about. This makes the website look boring, uninteresting & confusing. In such cases using different font weight, size, colors, relevant icons or relevant graphics makes the landing page more meaningful & engaging for the visitor.

2\. Using too many colors: Using many colors randomly on your landing page does not make it look more fancier. Colors are used to differentiate the contents of the website. They facilitate the customer in quick understanding of what the color denotes. Ideally, the easiest way to set up a color palette for your landing page is to use colors from your logo & add complimentary colors to it. For each of these colors, have a lighter & darker tone available which would help you set up a complete color palette for your landing page. It's best to start creating your landing page once you have set up your color palette.

3\. Footer is important: Many founders did not include a footer on their website. If included, it wasn't used effectively displaying the relevant navigation to your website. Ideally, you should have a footer which should possibly have all the links from the navbar, and other links which couldn't be put in the navbar. You should also have social links, even though somebody will not click it but having them builds trust in your website. You should also put some contact details; either email or phone number which adds to the credibility of your website. You can repeat the logo in the footer. This is also an important factor for brand recall. You can convert the logo into a single color and put it in your footer.

4\. Missing call to actions: This is one of the most critical errors that founders missed for their landing page; i.e. not having a call to action near the end of the landing page (just before your footer). This is the point where the customer has been through your complete product and understands what you are all about. It's the best place where the customer is most likely to buy your product/services. Ideally, all pages redirected from the home page to other important pages must have call to actions too.

5\. Unaligned website contents The content of the website is set to full width and not aligned as per the container. The flow gets lost and the whole page becomes confusing and irritating for the visitor. This will lead to the visitor bouncing off much quicker.

6\. Description consistency & balance: Many products had multiple features to pitch their customers. But each feature had different description lengths between 1-5 lines. This creates an imbalance in the landing page which makes it look fuzzy. All description length must be equal and ideally 2 lines or a maximum of 3 lines.

7\. Typography: Many landing pages had multiple fonts used on the website. Ideally, you should be using 1 or a maximum of 2 font families for your website. Avoid any fancy font for a blob of content. It becomes unreadable and hence more likely for a visitor to bounce off. Most creators use a default line spacing. Adding slightly more line spacing to your text would make it more readable and interesting.

We would be happy to have a look at your side project and share constructive feedback. [http://draftss.com/feedback.html](http://draftss.com/feedback.html)

</comment><comment><USER98> Something that I feel a lot of coders grapple with is that these 3 tasks are highly disconnected from each other. It is absolutely common to have someone who is incredibly proficient with CSS (maybe more and more so in tandem with some front-end JS skills) to have absolutely no concept of how to come up with a strong design in any reproducible, timely fashion.

Unless you feel tackling three very, very different problems at once I recommend you treat them separately.

* Functional Design: Think of the right things to do at the right point in your app in a way that engages and works for the user

* Aesthetic Design: Pick the right colors, sizes, margins, fonts, icons to support the functional design aspect (keep it simple, skip illustrations)

* Web Design: Get it to CSS/HTML/JS

It is very simple to get a random aesthetically pleasing thing going (there's a ton of theme resources out there) but for obvious reasons those do not include any consideration to your projects functional design needs, which then trickles down to the lack of strong aesthetic elements and an app identity.

My recommendation depends on the type of person you are and what you are looking for. Do you wanna do self-reliant and do everything by yourself? Think of it as another never ending journey (just like the coding one) and enjoy the ride.

I think tailwindcss is one of the best tools to guide you towards making a lot of right decisions quickly when it comes to aesthetic and web design. Starting keeping bookmarks of whenever you stumble across a page and think "this feels/looks good". Review whenever you wanna build something. Make it easier on you: Skip graphic heavy stuff, pay extra attention that work through great typography, borders, use of colors.

Functional design, well, is super fucking hard and I don't know of any great online resources that teach it on a high level (anyone?). It depends so heavily on the individual problem you are trying to solve and has so much to do with critical thinking, understanding the entire problem space (including user motivation, where they might struggle) and intuition.

To make this part not completely overwhelming definitely work on a problem that you personally have (or at least can heavily relate to), think about that problem as much as you can and figure the simplest possible steps to get you there.

The alternative route would be to work on finding a co-creator, someone who fills in the gaps. Since we are talking about side projects you can absolutely live a little dangerous here and start connecting with people over indie hackers, hacker news or whatever but if you know someone you have worked with before, and feel like you might enjoy working with on a side project go to them first.

good luck :)

</comment><comment><USER99> I've multiple solutions:

0\. Use a css framework like Bootstrap or Bulma, it's not difficult to put together a website/webapp with a bit of CSS skills (you don't need to know a lot of CSS to create a good experience)

1\. Team up with the UI/UX designer who you've worked in past and offer them your backend expertise for their project.

Good ol barter has saved my ass multiple times by now.

2\. If you don't want to get someone from your workplace, you can go on upwork etc...and hire a freelancer, it's a paid option.

<comment><USER100> Bootstrap is so antiquated. It is also far from easy, and even if you learn a lot about bootstrap is will not make your project suddenly look good. Not to mention the container system is one of the most confusing things I have ever seen, but maybe that is just me.

<comment><USER101> What would you recommend in its place? I've been using bootstrap for any web side projects of mine mostly for its ability to flex and handle multiple devices sizes and also because its defaults look passable out of the box.

I agree containers are confusing but honestly making a custom web app look good on all resolutions/aspect ratios is complicated in my opinion.

<comment><USER102> Not OP, but I recommend using plain css. With the grid layout and flexbox it has become pretty easy to create something decent and learning flexbox and grid isn't hard. Grid works basically the same as Bootstrap: split a page in parts and tell each element how many parts they can use. But with gird you don't to split your page in 12 part, but can choose for yourself how many you want. Flexbox is rid, but for things you want to arrange 1d instead of 2d.

However, if you know how to work with Bootstrap, I don't see a reason to learn something else for side projects, if you want to minimize the effort you put into front end stuff. It might not be ideal, but it's good enough imo.

<comment><USER100> I second using vanilla css. Vanilla css is a lot easier to understand than bootstrap imo. Vanilla css + HTML5 is good enough for pretty much any web page.

<comment><USER103> Yup. Learning basic web platform technologies is the best investment too. They're not going away, ever. (Comparend to the currently fancy libraries/frameworks). And it will help you understand all the things built on top of the web platform.

</comment></comment></comment></comment></comment></comment><comment><USER104> use a widget library. my last startup used

[https://vuetifyjs.com/en/](https://vuetifyjs.com/en/)

just pick the library with the largest component set in whatever frontend stack you use</comment>


FCC: Releasing 'Jokes' About Ajit Pai Colluding with Verizon Would 'Harm' Agency - <AUTHOR> https://gizmodo.com/fcc-says-releasing-jokes-it-wrote-about-ajit-pai-collud-1822763256 <comment><USER2> I got pissed off enough about this to switch away from Verizon.

First I looked at Credo (hey, I'm a progressive!), but they only give 1% of their fees to charity, and they pay some undisclosed amount to Verizon. They cost about as much as Verizon, so it is unclear how much impact switching has.

I settled on tracfone. They're run by the #4 telco on earth. They clearly bought off the Mexican government, to at least the same extent as Verizon bought off the US govt.

The difference is that I'm paying about $10 per line per month, vs. ~$40 with Verizon. I use the same phone, on the same network about as much as before, but, on two lines, I'm saving $60/month, which is certainly going to the EFF, independent journalism, and progressive political campaigns this year.

Their customer service is not great, but is good enough, and I feel as dirty, per dollar, as I do paying Verizon. That's a huge win overall.

Tracfone let you choose between the T-Mobile, AT&T and Verizon networks, and let you bring your own device.

I hope this helps you hit them in the pocketbook too.

</comment><comment><USER3> Things like this are exactly why there is a need for these transparency laws. If the jokes are so damning, maybe he should take his chairmanship a little more seriously and not make them.

</comment><comment><USER4> This article literally proves the FCC's point. I wouldn't want to release it either when a ravenous horde will jump on any scrap to hang him and the FCC.

I don't like their decisions as much of the next person but I'm not submitting a FOIA for what amounts to their correspondence dinner. The fact that the author thinks this issue is superserious is more a reflection on their demeanor than the FCC's.

<comment><AUTHOR> FOIA doesn't have an it-looks-bad provision AFAIK. This was a dinner you paid for. Should be public unless there's some other valid reason.

<comment><USER4> I'm not saying the request isn't valid. I'm saying that this journalist is fishing with a really long line.

<comment><USER5> Be that as it may, I don't think intent (other than the request itself being made in good faith) enters into it. Barring legitimate national security interest (and that means a hell of a lot less nowadays!): Public pays for it, public should get to see the details.

<comment><USER6> Exactly.</comment></comment></comment></comment></comment>


Why the Tesla boom could actually be very good news for the electric grid - <AUTHOR> https://www.washingtonpost.com/news/energy-environment/wp/2016/06/15/why-teslas-and-other-electric-vehicles-could-actually-be-very-good-news-for-the-grid/ <comment><USER2> > There are still only a little more than 400,000 electric vehicles on the > road in the United States, or just 0.16 percent of all cars. But predicted > growth rates could have them at more than one-third of new car sales > globally by 2040 […]

What percentage of the total vehicles is 33% of the yearly new sales?</comment>


Which language will build the cylons - <AUTHOR>

I am relatively new programmer and excited about the future of computing and computer science in general. I am now wondering what kind of language do you think future intelligent robots will be progammed in? <comment><USER2> HTML!

      <html>
      <head>
      <!-- will to kill all humans goes here -->
      </head>
      <body>
      <!-- insert weapon systems and super strength here -->
      </body>
      </html>

</comment><comment><USER3> From watching Stargate you can clearly see that the Cylons are programmed in Javascript.

<comment><USER4> The Terminator was programmed in 6502 assembly language.

</comment></comment><comment><USER5> Bender from Futurama has a 6502 chip ...

</comment><comment><USER6> Build your first NN in whatever language you want. Prepare to be underwhelmed :)

<comment><USER7> you'll know you've picked the right language when robots from the future beat down your door.

</comment></comment><comment><USER8> Lisp, duh.</comment>


Don't Quit Your Day Job - <AUTHOR> http://www.forbes.com/entrepreneurs/forbes/2008/0721/060.html

<comment><USER2> _Lisa and Jeff R. Peri of Los Angeles depleted their $200,000 in savings, maxed out their credit cards and borrowed $300,000 from family and friends to develop and market their low-impact car-wash product. The concoction, Lucky Earth, comes in a quart-size spray bottle that retails for $17. It's a mixture of water, coconut by-products, sodium carbonate and water-soluble silicone, blended with the notion that eco-sensitive customers will gladly substitute some elbow grease for a garden hose._

Idealism-induced myopia combined with the current "green tech" fad is breeding some truly bad business ideas. This is one of them.

Seriously, I'm supposed to wash my entire car with a quart-sized seventeen- dollar bottle of mostly-water in order to save a few gallons of tap water? There's a small number of people out there who are dumb enough to pay for anything if they think it's "helping the environment" (at least until the next fad comes along to displace the green-panic fad of the moment) but the market seems really very limited, both in extent and in duration.

</comment><comment><USER3> Turns out the most successful of all the examples they gave in the article DID quit his day job (actually got fired from it)

</comment><comment><USER4> "Not so long ago an Internet venturelet like Otrib might have seen a swarm of venture capital firms, or at least some commercial banks offering high-priced loans. Nowadays such financiers want to see businesses with revenue, customers and a logo solidly in place before they commit capital."

Revenue, customers, and.. a logo?

<comment><USER5> Yet the VC crowd is dumping money on web apps like Twitter with no revenue.

They do have 2 out of the 3, maybe it's like the ol' "good/cheap/fast, pick any two" thing.

</comment></comment><comment><USER6> This may be a shallow thing to take away from the article, but "Lobster Gram" is most appropriate and hilarious name for a company that I've heard in a long time.

</comment><comment><USER7> duplicate? <http://news.ycombinator.com/item?id=235658>

</comment><comment><USER8> pretty cool to see these companies and founders reaching success milestones while doing the day job thing. the quote from the ZoomInfo CEO about supporting his employees in their entrep. pursuits was great. A friend recently left zoom to start viximo, so its the truth. some inspiration for all the yc moonlighters, including me.</comment>


When Computers Go Wrong - <AUTHOR> http://www.pcpro.co.uk/features/363580/when-computers-go-wrong

<comment><USER2> I think that technophobes derive a great deal of their mistrust of technology from real-world blunders such as these (and fictional ones like Wargames) not realizing that "human error is normally the root cause for embarrassing failures", as the author points out.

</comment><comment><USER3> Every startup company should strive to never show up on a list like this.</comment>


Russian tourist offered employee $1M to cripple Tesla with malware - <AUTHOR> https://arstechnica.com/?p=1701893 <comment><USER2> I see that you subscribe to Ars Technica's RSS/Atom feeds.

(Indicated by the fact that the submitted link is [https://arstechnica.com/?p=1701893](https://arstechnica.com/?p=1701893), not [https://arstechnica.com/information- technology/2020/08/russi...](https://arstechnica.com/information- technology/2020/08/russian-tourist-offered-employee-1-million-to-cripple- tesla-with-malware/)).

<comment><AUTHOR> Guilty as charged...</comment></comment>


Five deep questions in computing (2008) [pdf] - <AUTHOR> http://www.cs.cmu.edu/~wing/publications/Wing08.pdf <comment><USER2> IMO, most of these are very ill-posed questions. The questions are:

 _1\. P = NP?

2\. What is computable?

3\. What is intelligence?

4\. What is information?

5\. (How) can we build complex systems simply? _

Except for the first question, there is no way to determine if any given answer is an acceptable answer. The 2,3,4 are asking for definition and you can provide anything arbitrary suits your needs at hand or mood at the time. The question has no clear constraint on which answer is admissible.

I'd say this article is perfect example of how _not_ to pose questions! Asking a good question is a lot of hard work and author simply hasn't done the homework here. A great example of asking good question is, of course, Hilbert's 23 questions. He had to survey the field deep and wide and craft each question such that answer can be verified, if one was ever proposed.

<comment><AUTHOR> Reading through the article I got the impression that these questions were posed because they lead to more interesting questions. In fact, the last paragraph fittingly sums it up. "I pose these questions to stimulate deep thinking and further discussion."

Here's an example from the text of what she means: "In order to answer what is computable, we must consider the underlying machine (abstract or physical) that is the computer. Consider the Internet as a computer. What is a universal machine model for the Internet? Consider a molecular computer, a DNA computer, a nano-scale computer, or even a quantum computer. What problems can and cannot be solved through them?"

<comment><USER2> There are well posed version of these questions that have existed for quite a while. It's one thing to wonder about arbitrary fluffy hand wavy way and it's quite another thing to crystallize your thoughts and cast a precise statement of what you are looking for.</comment></comment></comment>


Show HN: Apse, A Personal Search Engine - <AUTHOR> https://apse.io <comment><USER2> Commercial closed-source software that periodically OCRs my screen? I don't even like the idea of free open source software doing that.</comment>


Reducing Raspberry Pi footprint - <AUTHOR> http://www.gundersen.net/raspberry-pi-making-it-slimmer/

<comment><USER2> Definitely some useful notes in this one. Didn't know that SD cards were so small!</comment>


Show HN: Record Linkage Resources - <AUTHOR> https://github.com/ropeladder/record-linkage-resources <comment><USER2> Thank you.

I don't understand half of this, but seems very useful. Need better naming/explanation of use-cases (if I don't understand it, maybe people who are in need of these services don't also).

<comment><AUTHOR> Record linkage is conceptually pretty simple--it's just deduplicating records (usually of people, in census or medical or commercial or other scenarios) that don't have unique identifiers. It's tough because it's O(N^2) and because you're trying to build a bunch of disparate information into your matching decision.

It's helpful to hear how confusing it is. I stumbled around for literally years trying to build my own solution until finally a kind soul on the Data Science board on Stack Exchange directed me to the Record Linkage Wikipedia page, and I figured out some of the right terms to search for.

I'll try adding some more examples up top and use case scenarios up top.

I'm also hoping to add some info to help differentiate the software a bit more, but unfortunately most of them are barely past the proof-of-concept stage in terms of usability.

<comment><USER2> Thank you.</comment></comment></comment>


Betty Weissman (mother of edw519) 1930-2011 - <AUTHOR> http://edweissman.com/betty-weissman-1930-2011 <comment><AUTHOR> I realize this isn't exactly Hacker News, but sharing the source of my inspiration brings me more comfort than just about anything I've ever posted here. She was the perfect mother for an introverted, achievement-oriented nerd trying to find his way in the world. Thanks for letting me share.

[UPDATE: Thank you all for your kind words. It really means a lot to me.]

<comment><USER2> By the authority invested in me by a highly arbitrary karma algorithm, I decree that people with sufficient HN karma get to make a post inviting other HN members to mourn the passing of their mother.

When we have to -- but not before; remember that we are nothing if not lean and agile -- we can have the debate about the karma cutoff for mourning. My initial proposal is: 1.

(Incidentally, more condolences, and I apologize if it is inappropriate to be slightly silly at the memorial. It's my family tradition. I can't let my late grandfather down. ;)

</comment></comment><comment><USER3> When my dad died suddenly a couple years ago, I found a surprising amount of relief from this poem.

Death is Nothing at All by Henry Scott Holland

        Death is nothing at all.
        I have only slipped away into the next room.
        I am I and you are you.
        Whatever we were to each other,
           that we still are.

        Call me by my old familiar name.
        Speak to me in the easy way
           which you always used.
        Put no difference in your tone.
        Wear no forced air of solemnity or sorrow.

        Laugh as we always laughed
           at the little jokes we enjoyed together.
        Play, smile, think of me, pray for me.
        Let my name be ever the household word
           that it always was.
        Let it be spoken without affect,
           without the trace of a shadow on it.

        Life means all that it ever meant.
        It is the same that it ever was.
        There is absolutely unbroken continuity.
        Why should I be out of mind
           because I am out of sight?

        I am waiting for you,
          for an interval,
             somewhere very near,
               just around the corner.

        All is well.

</comment><comment><USER4> hey Ed,

I just woke up to your email.

First of all my condolences to you

This stuff really hits where it hurts. The 'behind every great man' quote more often than not refers to a mom rather than a spouse and I think it is beautiful of you that you wrote this and I hope that those who don't think this is 'hacker news' can keep their hands of their mouse buttons.

To all of you wondering how many pomodoros worth of productivity you can squeeze out of today: Keep an eye on the rest of your life it is more fleeting than you probably realize.

I love you is so much better than goodbye.

You're a lovely person Ed, now I have a bit more insight into why.

j.

<comment><USER5> "The 'behind every great man' quote more often than not refers to a mom"

I actually never thought about this until you just said it. I always put it to the spouse not the mom.

It's sad that kids aren't raised like this anymore. In our day you didn't get the trophy unless you deserved the trophy. Now kids get a trophy just for showing up and everyone is special.

</comment></comment><comment><USER6> My condolences. May you find comfort in the good memories.

Last year, I lost my dad. He was 57; He died on his birthday. I miss his quirky sense of humor.

<comment><USER7> If I must die, I hope to die as an integer as well.

</comment></comment><comment><USER5> I was raised the same way and can relate to all you've said about your mother. (My mother is about the same age and was raised in the same era.)

These two are my favorites: \---- When others said, "We need a time-out," or "This is a teaching moment," she just looked at you in such a way that you knew that there would never be a worse feeling than disappointing her.

When you played a song on the piano and she didn't recognize it, she said, "For this we need lessons? Go practice some more!"

</comment><comment><USER8> I like this post on HN. Because of the content, thanks for sharing that, but also because I think it is important to think about death. For many reasons.

My condolences to you, edw519.

</comment><comment><USER2> My condolences, Ed. Your mom sounds like an awesome person.

</comment><comment><USER9> Oh, Ed. I am so sorry to hear this.

Welcome to the very unfortunate club of those of us who have lost a parent. It will always hurt, and it never goes away, but you do come to be at peace with it over time.

I am really thinking about you and this wonderful tribute you've written for your lovely mother right now. You've done something beautiful and she is so proud of you.

My advice at this time is to fully allow yourself to mourn. It's OK. Only you can experience your mourning and it may be the same or it may be different from how other people experience it, but just remember that only you can experience your mourning in the way you need to.

And that is totally cool because you are a beautiful piece of your Mom that is here right now.

Plus... Betty would've wanted it that way.

My sorrows are with you / Marc

</comment><comment><USER10> Wow ... I hope my kids feel that way about me when I leave this world. I know you'll miss her physical presence, but I get the sense that you carry so much of her with you that you'll never feel that she's left you.

But I'll add my condolences for that physical loss.

</comment><comment><USER11> What an excellent way to remember your mom. She sounds like a great woman and I can tell she'll be greatly missed. Thank you for sharing this with everyone.

</comment><comment><USER12> My deepest condolences to you and your family. Thanks for sharing such a heart-felt and moving tribute. She seemed like a model parent and a wonderful person to spend time with. Many lessons for us all to learn from. I know from my own experience that much benefit can be derived from writing about our deceased loved ones. I plan to save your blog post among other files in my "inspirational" folder.

</comment><comment><USER13> I sometimes like to think I could cope well with losing my mom now that I am married and have a child but in reality it scares the shit out of me.

My condolences to you

</comment><comment><USER14> My condolences to you, Ed. Now I have a clue to why you always come across as such a wise man in your posts.

I am so lucky that I still have both my loving parents, but I have experienced the loss of loved ones. I find solace in knowing that while they can't make new decisions, their light cone will keep shining in eternity, so they will always be a part of the world.

</comment><comment><USER15> You are a lucky man to have such a wonderful mother, and to realize it as well. We are equally lucky because she did a great job with you and all of HN has benefited greatly from your contributions.

I've taken note of what she has told you and will try do do my best to absorb and apply it to my own children.

Peace to you and your family.

</comment><comment><USER16> My condolences; I am sorry for your loss.

</comment><comment><USER17> My condolences on your loss. Losing a parent is hard - I lost my father almost two years ago, and I still think about him almost every day. Hopefully the happy memories of her will help you to get through the tough times.

</comment><comment><USER18> Sorry for your loss. I hope Sharing this among your community will ease the pain.

</comment><comment><USER19> That was a lovely blog post and I've upvoted you with my humble amount of karma. I am sorry for your loss, but hey, you had a lot of good time and clearly spent it well.

</comment><comment><USER20> My most sincere condolences. There is nothing that can be said in the face of such loss.

We all face it one day or another. It never gets better, but we get used to it and we move on.

</comment><comment><USER21> I obviously don't know you or your mother, but I enjoy your writings and it's now obvious she played a big part in building you, so my condolences.

</comment><comment><USER22> Requiescat in pace.

</comment><comment><USER23> She had to have been a really wonderful person to have raised a son who is such a nice human being. My condolences Ed.

</comment><comment><USER24> That was simply beautiful, I hope when I have kids mate, I inspire that in them... bookmarked for future reference..

</comment><comment><USER25> Excuse me, I have something in my eye.

Lovely writing, as always, Ed, and I think she probably would have smiled for this one.

</comment><comment><USER26> Deepest condolences.

"Mother is the name for God in the lips and hearts of little children.", William Makepeace Thackeray.

</comment><comment><USER27> Nice lessons here for parents. Thanks for sharing and my heartfelt sympathies for your loss.

</comment><comment><USER28> Thank you for sharing this. My condolences to you and to all whose mothers have passed away.

</comment><comment><USER29> I'm sorry for your loss. May she be always remember by the ones who loved her dearly.

</comment><comment><USER30> My most sincere condolences. May the inspiration she instilled in you be eternal.

</comment><comment><USER31> I am sorry for your loss, Ed.

</comment><comment><USER32> My condolences Ed. She sounds like a terrific person, and a great inspiration.

</comment><comment><USER33> Sorry for your loss Ed, that was beautiful and sad writing. My condolences.

</comment><comment><USER34> That's a wonderful if very sad blog post. I'm sorry for your loss Ed.

</comment><comment><USER35> Your mom sounds really remarkable. I want to share my condolences.

</comment><comment><USER36> edw519, my condolences.

You're one of the most interesting and inspiring people on Hacker News. I'm sure I speak for many other when I say Thank You for all you've done here.

</comment><comment><USER37> I'm sorry for your loss. I went through this last year.

</comment><comment><USER38> I am sorry for your loss. She lives on through you.

</comment><comment><USER39> Beautiful writing. I'm really sorry for your loss!

</comment><comment><USER40> My sincere and deepest condolences, Ed.

Thank you for sharing this.

</comment><comment><USER41> My condolences Ed.

</comment><comment><USER42> mothers, in my belief, are the most beautiful, most precious creations. i felt your mourning in my heart. my condolences.

</comment><comment><USER43> My condolences, sorry for your loss.

</comment><comment><USER44> My deepest condolences, Ed.

</comment><comment><USER45> my condolences ed, words seem inadequate to express the sadness we feel.

</comment><comment><USER46> My sincerest condolences.

</comment><comment><USER47> Ed... I don't know you, but as another hard working person, I can honestly say that your post has reminded me of what is important in life. It's those that love me who support my hard work and sometimes reclusiveness/introverted-ness.

Thank you for posting this. Your mother's story has had a compounded effect with your post. Her legacy lives on, and this is just one way: inspiring others on HN to cherish those who love them, which she obviously did with you.

Thanks, and I am sorry for your loss.

</comment><comment><USER48> This post made me call my mom after about a month!...Really sorry for your loss man!</comment>


Tumbleweed Smalltalk - <AUTHOR> http://pgregory.github.com/tumbleweed/

<comment><USER2> This is very cool. What is the underlying purpose of this project? Is it being used for a bigger project?</comment>


The GrownChildCam - <AUTHOR> http://www.blog.sethroberts.net/2008/07/11/grownchildcam-new-treatment-for-depression/ <comment><USER2> I use skype to talk to my parents, and it is pretty good. Sometimes I feel like they are close, especially when you full screen the video. When it was my father's bday, I bought a cake, put some candles on it, and singed to him happy bday, in front of skype. I ate if of course, but they ate the cake my mom did for him at the same time.

I see my parents about 2-3 times a year, and something like skype (and maybe yahoo messenger), helps to fill the gap.

Who said that web 2.0 -ish apps are totally useless is wrong. They can actually change the world and make people's lives a little better.

</comment><comment><USER3> My mother (who thankfully is not so old) uses the Justin.tv officecam for exactly this.

</comment><comment><USER4> Neat idea. I'd like to know more about the computers and software between camera and TV. It sounds like he's been able ot do better than I've done so far with linux boxes and Haupauge cards.

</comment><comment><USER5> Wow. That is incredibly poignant.

<comment><USER6> Yes. Totally amazing hack. The stuff I like to see here. (A few more tech details would be righteous but I'm sure the hackers here have ideas on how they could do the same thing.)

</comment></comment><comment><USER7> Since my Gran was in a home, I've thought that IT / the internet really should be able to help with some of the loneliness.

I know I feel more connected with forums and IRC than I do without.

</comment><comment><USER8> Nothing against Jacob Nelik, but ideally if your mother has nothing to live for but you, wouldn't it be more helpful to try to get her to develop some other friends/interests?

</comment><comment><USER9> big up to seth roberts. good job man, good job.</comment>


Gender gap in perception of computer science - <AUTHOR> http://www.zephoria.org/thoughts/archives/2009/06/08/gender_gap_in_p.html

<comment><USER2> <http://philip.greenspun.com/careers/women-in-science>

</comment><comment><USER3> The girls don't think it's a great career.

The girls are right!

Boys (and men) bet on long odds and so few get their payoff. Computer science is a terrible career for the "bottom" 95%. Unless you are absolutely in love with programming, there's little reward for being an anonymous code jockey inside a big corporation.

Just think Office Space.

You must agree with this to some extent or you wouldn't be on HN.

But boys/men are also far more willing to go to extremes in their pursuit of the long odds than women, as well.</comment>


Touch Board: Interactivity Everywhere - <AUTHOR> http://www.kickstarter.com/projects/863853574/touch-board-interactivity-everywhere?new <comment><USER2> Two things - one v boring - can I hook it up to a RPi? I suspect yes so we shall see.

Bit that light switch just killed me. they painted on a light switch. With Zwave that means no electrician, no installation. I have been looking around at what all this neans - how will we be doing the same things in the future - but how will they be different.

And that hit me. Houses at the moment are analogue, lacking co-ordination, shared protocols etc. I mean I have a new build with some top dog heating control thing. it's sooo counter intuitive, that I just press up or down.

but a little home automation and people can paint on their own controls. Buy sticker packs from B&Q. EInk will be able to turn a paint on wall to a display. It's the same thing (turning lights in) just different

</comment><comment><USER3> I love it! A few months ago I took apart an old Roland keyboard and hooked it up to an arduino in hopes of creating a midi device. But the project become too much to handle. This seems like it could achieve what I want much quicker!

From the description it seems like I could only hope to get one octave of keyboard notes out of these... I wonder if there are any tricks you could use to get more. Or if you could chain these.

</comment><comment><USER4> And so begins my journey in arduino</comment>


Cross-Origin Read Blocking - <AUTHOR> https://www.chromium.org/Home/chromium-security/corb-for-developers <comment><USER2> If you're interested in cross origin information leaks and defenses against them (including Cross Origin Read Blocking), I highly recommend this short 7 page summary by Artur Janc and Mike West from Google:

[https://www.arturjanc.com/cross-origin- infoleaks.pdf](https://www.arturjanc.com/cross-origin-infoleaks.pdf)

</comment><comment><USER3> Will we be able to report errors using the upcoming report-to header? I didn't see a report mechanism listed, but like with hpkp and cors I would like those errors to.be reporteable

</comment><comment><USER4> Does anyone have good additional links? I don't understand the risk of delivering an HTML document to. script tag src?

<comment><USER5> This should also help put an end to cross domain search timing attacks. An old example of one using the IMG tag:

[https://www.idontplaydarts.com/2015/09/cross-domain- timing-a...](https://www.idontplaydarts.com/2015/09/cross-domain-timing- attacks-against-lucene/)

<comment><USER6> But chrome doesn't see the content type until after the response is served.

<comment><USER7> No, it sees the content type in the headers that are at the start of the response. Presumably if that header isn't correct it'll stop downloading any further data.

<comment><USER6> After Lucene has spent some variable amount of time depending on how many documents match the query...</comment></comment></comment></comment></comment>


Show HN: Downloadable Zoom backgrounds so you can be a weather presenter - <AUTHOR> https://micheal-fish-yourself.webflow.io <comment><USER2> Curious can gif be used as a zoom background? And can you hotlink to images?</comment>


Online Before the Internet: Early Pioneers Tell Their Stories - <AUTHOR> http://www.infotoday.com/searcher/jun03/ardito_bjorner.shtml <comment><USER2> Early US pioneers. The Uk, European, Japanese experiences aren't in this.</comment>