Open Side Menu Go to the Top

11-22-2013 , 11:04 AM
at some point, with this whole flat design craze, somebody is going to point out that the emperor has no clothes and everyone will laugh and come to his senses, right?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
$25m Guaranteed WPM on CoinPoker
Join the action now
Daily Rewards • Splash Pots • CoinRaces
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
11-22-2013 , 11:14 AM
Shoe, the program in question is bought by the company I work for.

gm, I hate flat design as well. Very bad for usability, and it appears that the current trend in design is purely self-centered, which philosophically feels wrong.

Do you have any egregious examples?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-22-2013 , 12:01 PM
The problem is there's no good obvious successor to flat. Do we really want huge gradients and dropshadow all the things and excessive stroke on all text? I guess there could be some middle ground but yeah. And the iOS6 ridiculous pastels is pretty silly, not to mention ripping off Windows 7's frosted glass stuff.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-22-2013 , 12:19 PM
Quote:
Originally Posted by Grue
The problem is there's no good obvious successor to flat. Do we really want huge gradients and dropshadow all the things and excessive stroke on all text? I guess there could be some middle ground but yeah. And the iOS6 ridiculous pastels is pretty silly, not to mention ripping off Windows 7's frosted glass stuff.
yes, we do. i like gradients and dropshadows. i have no idea how skeuomorphism became a dirty word. well done skeuomorphism is awesome -- it's both pretty and clarifying. your eye knows where to go and function and differentiation are unambiguous. io6 >> ios7 imo. it's like some popular graphic designers made a deep sounding philosophical argument about how flat was "truer" and "less of a lie," and everyone just sighed and said, "yeaaaahhhh. totally."

i think flat design is so obviously a step backwards that i will be shocked if it's still dominating 5 years from now.

EDIT: dave, i'll try to screenshot and post the "redesign" that got me all riled up later
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-22-2013 , 12:54 PM
Quote:
Originally Posted by gaming_mouse
i think flat design is so obviously a step backwards that i will be shocked if it's still dominating 5 years from now
UX purism aside, metaphors get stale over time, which necessitates change even if things are good the way they are. Following fashion trends can also be important even if they are transitory to signal that you're connected and have the capability to adapt. You don't want to be associated with dead products.

There's not much of a point in discussing if a particular trend will stick - it won't in its current form - the question is what are the shortcomings and how do you address them without going backward?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-22-2013 , 01:47 PM
Quote:
Originally Posted by candybar
UX purism aside, metaphors get stale over time, which necessitates change even if things are good the way they are. Following fashion trends can also be important even if they are transitory to signal that you're connected and have the capability to adapt. You don't want to be associated with dead products.
candybar,

i nearly always agree with the spirit of your posts, and i do understand your point here, but I think it's a little dangerous too. There is virtue in knowing when fashion is going wrong, having faith that quality will trump fad, and sticking to your guns. That position can go too far, too, but I personally don't feel a well done skeuomorphic app marks you as a dinosaur, except maybe among a certain contingent of the techcrunch/HN crowd who don't represent average users at all.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-22-2013 , 04:00 PM
Quote:
Originally Posted by gaming_mouse
100% correct post
I had an iPhone w/ iOS6 for almost exactly one month and can't agree with this enough. The "upgrade" was appalling. I can't wait for this monochrome and/or flat stupidity to die. It is literally a case of valuing aesthetics over usability, except I don't even find half this crap aesthetically pleasing so it's just trash.

https://medium.com/design-startups/461772fbcac7

CTRL-F "Orwell". Now look at the taskbar. Specifically, the "Mail" icon. I literally don't understand how that doesn't piss a graphic designer off. And the geniuses over there made one of the icons red, one green and one blue, and there's no way to change it, and the taskbar color is based on your wallpaper, which also can't be changed, so I'm now stuck with greyscale wallpapers.

btw, one rarely-stated advantage of skeumorphism is that by mimicking real-world behavior, you force yourself to follow some kind of logic. Aside from the icon-zooming-in behavior taking far too long, the icons also appear from the most idiotic possible direction, looking as though they are zooming in from my face. Literally anything else would make more sense. Intellectually, I know that I'm just looking at pixels arranging themselves on my screen anyway, but if the goal is to make my phone look like it's doing something, maybe consider not making that thing ******ed.

I got some kind of feedback survey on my iPhone; when I got to the part where I could type whatever I wanted I seriously considered writing "Anyone who would make transparent clickable icons would **** sheep."
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-22-2013 , 04:02 PM
Quote:
Originally Posted by gaming_mouse
i nearly always agree with the spirit of your posts, and i do understand your point here, but I think it's a little dangerous too. There is virtue in knowing when fashion is going wrong, having faith that quality will trump fad, and sticking to your guns. That position can go too far, too, but I personally don't feel a well done skeuomorphic app marks you as a dinosaur, except maybe among a certain contingent of the techcrunch/HN crowd who don't represent average users at all.
I agree that finding the balance is tricky. The flat trend, some shoddy execution aside, does bring good ideas to the table. While well-done anything is going to withstand the test of time better than poorly-done trend-follower, if I have limited resources and need to get users or investors quickly, I'm going to follow trends.

Excessive 3D skeuomorphism is going away. Even on physical devices, pressable buttons are giving way to flat touch sensors. 3D skeuomorphism on touch screens is tacky because touch breaks the metaphor - when you touch, you know it's flat, which makes the 3D-look feel like a cheap imitation. It's not all quite there. From my experience, casual, non-technical people that skeuomorphism was supposed to help out never understood the metaphors - the web was always light on 3D skeuomorphism and heavy on flat compared to desktop UIs and casual users have always found the web easier. The more "advanced" users who fully internalized the skeuomorphism and the rich web of metaphors are the ones who find "flat" less usable and confusing. As the flat design continues to embrace the best of existing metaphors and improves upon them, fewer will be left behind.

The flat trend in a sense started way back in the 90's when links replaced buttons and flat html pages replaced "windows" full of heavy 3D controls full of incoherent metaphors.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-22-2013 , 06:05 PM
I think flat has its place but you need to be really careful with your colors because they give a lot of meaning to what it's supposed to do. For example if you have buttons that are blue then you better not ever use that same color blue for a label or some type of non-button object.

Objects that you can interact with can still have multiple states with a flat approach. Just look at the bootstrap 3 buttons. They have active and hover states.

Flat is also interesting when it comes to space utilization. I once wrote a C# desktop app that had to cram a lot of information in a very small area. I forgot the exact measurements but it was like 180 pixels wide and 700 pixels tall.

You would be surprised how much info I was able to get to fit while still being very usable and not cluttered looking. This was maybe 5 years ago but I did end up using all flat controls because having a border take up 4 pixels instead of 1 is seriously a big deal when you're dealing with small areas.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-23-2013 , 12:35 AM
Here's a collection of some of the "best."

Like anything with a bunch of designs, I find it monotonous, but that's probably because I am not a designer.

http://www.designrazzi.com/2013/flat-websites-examples/
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-23-2013 , 04:11 AM
Quote:
I'm pretty sure that this is the single worst program in existence that is paid for by end-users. It is proof that you don't need a viable product to make a good nickle. It seriously makes me wonder how any startup can fail.
It all comes down to your definition of viable. As long as you solve a really painful problem it doesn't really matter how crappy you do it if it's better than anything else. That is why you spend so much time on IDing the right problem, right customer and making sure your solution actually solves said problem for said customer segment.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-23-2013 , 05:07 PM
Quote:
Originally Posted by clowntable
It all comes down to your definition of viable. As long as you solve a really painful problem it doesn't really matter how crappy you do it if it's better than anything else. That is why you spend so much time on IDing the right problem, right customer and making sure your solution actually solves said problem for said customer segment.
This is what is crazy. The industry I work in is very small. Despite the size, there are a lot of alternatives for the product this company creates. There is nothing that this product does that is better than the competition. I've recently interviewed at other companies* in this sphere and they are all rather shocked that anyone would use this product and generally tell me that the company I work for should consider using alternatives (to put it politely).

*It sucked at first, but I do enjoy my job now, aside from the stress this particular product causes me. Just looking to get into something better paying and more expansive than what I do now.

Speaking of jobs. I was recently phone-interviewed for a job as a Jr Project Manager, asked to go in, but then canceled.. I get that I would have to go through a bit of training, but I felt like they were low-balling me on the pay. Not a strong stroke of confidence here, and not worth the risk of leaving a stable job for something that can blow up in my face. I also feared that my income would not increase to reflect my real skills once I was brought up to full speed. Would you guys have faith in a programming company offering low-ball wages? I think I've been reading "72k after 3 months of training" too often lately.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-23-2013 , 05:21 PM
I thought you were a developer dave? Going from that to project management seems pretty crazy especially on the jr side. IMO "jr project manager" is another word for intern.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-23-2013 , 05:27 PM
Everyone thinks I'm a developer... except for those that know I'm not.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-23-2013 , 05:51 PM
dave,

employers are in the set who don't know.

everyone wants to get the best product for the lowest cost, so there's lowballing and then there's lowballing. we can talk numbers in pm if you'd like.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-23-2013 , 05:54 PM
Does it rhyme with shout free shifty?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-23-2013 , 06:31 PM
I have a few D3 questions.

I've created a plot of "circle" svg elements and it's great.

What I want to do is add a search feature that will highlight each node and display the labels of each node if any of the search terms matches a word in the node's label.

So, if a node had the label "little red riding hood," I'd like a search query such as "red blue green" to highlight and display the label of that node.

Here's the pseudo-code of what I want to do:

Code:
for each circle:
	label = circle.label
	for each search term:
		if term in label:
			show node label
			break
However, I'm not sure the best way to implement many of the aspects of the pseudo-code.

What is the best way to store the label data? Can you append a "label" attribute to each circle element?

Code:
//Assumes variable "dataset" already loded in HTML with properties "xval", "yval", and "label"

//Plot the points
svg.selectAll("circle")
	.data(dataset)
	.enter()
	.append("circle")
	.attr("cx", function(d, i) {
		return xScale(d.xval);
	})
	.attr("cy", function(d, i) {
		return yScale(d.yval);
	})
	.attr("label", function(d, i) { //A good idea?
		return d.label;
	})
What is the best way to iterate through each node, access its label, and determine if the label contains a search term?

What I'd like is:

Code:
//var searchTerms = array of user-submitted terms;
svg.selectAll("circle")
	for (i = 0; i < searchTerms.length; i++) {
		if(circle.label.indexOf(searchTerms[i]) !== -1) {
			svg.append("text")				
				.attr("id", "t-" + x) //x being unique identifier of circle, so they'd match
				.attr("x", xScale(circle.xval) + 10)
				.attr("y", yScale(circle.yval))
				.text(circle.label);
		}
	}
However, you can't loop through each circle in this way using svg.selectAll(). How would you?

Currently I'm "showing" the labels by appending a text element to the DOM that contains the circle's label, using a matching unique id # to add and remove. Good idea?

tl;dr I lack experience doing this, and would appreciate some pointers on the way in which to implement this feature.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-24-2013 , 04:08 AM
mac people,

i have to get a mac for work for ios development. if i get a macbook pro with 256G ram, can i easily upgrade the ram later? or do i need to make the original purchase with 512G?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-24-2013 , 11:53 AM
Check Crucial.com but I'm pretty sure that's not possible anymore, I'm pretty sure they are soldering everything to the motherboard now.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-24-2013 , 11:59 AM
When I bought mine the site said you couldn't upgrade the SSD after purchase, but it looks like that might not actually be true

edit: also I'm assuming you meant SSD since you said 256G rather than ram, but if you actually mean ram I think kerowo is right, it's soldered to the MB
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-24-2013 , 02:08 PM
well named, woops yes i did mean ssd, thanks for the link.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-24-2013 , 05:24 PM
Here's what I ended up doing:

Code:
//Highlight nodes that meet search term
svg.selectAll("circle")
	.attr("fill", function(d, i) {
		if (this.getAttribute("selected") === "true") {
			return this.getAttribute("fill");
		}
		for (iter = 0; iter < searchTerms.length; iter++) {
			var term = searchTerms[iter];
			if (d.label.indexOf(term) !== -1) {
				circlesToAddLabel.push(this);
				return "#e00";
			}
		}
		return "#000";
	})
	.attr("selected", function(d, i) {
		if (this.getAttribute("selected") === "true") {
			return true;
		}
		for (iter = 0; iter < searchTerms.length; iter++) {
			var term = searchTerms[iter];
			if (d.label.indexOf(term) !== -1) {
				return true;
			}
		}
		return false;
	});
If I wasn't sloppy with SVG selections, I could probably find a way to save the program the work of checking whether or not each circle contains the search term twice. Maybe declare a boolean for that purpose, and have the first check modify it?

For now I'm just glad to have the visualization working!
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-24-2013 , 05:51 PM
Urinal,

Put up a working example on tributary.io.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-24-2013 , 05:54 PM
I know nothing of svg selections but your proposed boolean solution is the first thing I thought of to not have to repeat the search twice.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
11-24-2013 , 07:32 PM
How about JSFiddle?

(I'm not sure how to make the buttons work on JSFiddle.)
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
$25m Guaranteed WPM on CoinPoker
Join the action now
Daily Rewards • Splash Pots • CoinRaces
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **

      
m