Thursday, December 31, 2015

adobe photoshop - How can I prevent file size from ballooning when using linked images?


I'm creating a poster that is 50cm x 70cm at 300dpi. The empty document is 5.1M when saved... which still seems ridiculous for a completely empty white document, but I can live with it.


When I place a linked 4.3M JPEG image (File -> Place Linked...) and save, the PSD balloons to 95.5M. Nothing else, just a 4.5M JPEG linked in an empty document.



This seems completely absurd... the file is under 5M and it shouldn't even be including it, and when the JPEG is opened in Photoshop itself it's full in-memory size is only 34.9M.


How is it managing to waste all this space? How can I prevent it from doing so?


I've already tried:



  • Turning off "Maximize Compatibility" (Preferences -> File Handling -> Maximize PSD and PSB File Compatibility = Never)

    • Helped a lot, was 384M before I did this.



  • Turning off "Image Previews" (Preferences -> File Handling -> Image Previews = Never Save)


    • Didn't seem to do anything.



  • "Covering" the entire image in a solid white top layer before saving (in an attempt to let any preview image compress to almost nothing).

    • Didn't seem to do anything.





I'm using Photoshop CC 2015.05.0 on OSX 10.10.5.


edit


It's pretty obvious that Photoshop is saving a version of the linked file in the PSD: if I delete the linked file and open the PSD I can still see the image in the document. What I am looking for is a way to disable this behavior so that it does not include that information from the linked file (I don't care about it showing up if the source file is missing).



Answer



Although your file is linked, Photoshop still saves the flattened image data. With a JPG you are unlikely to see any file size savings by using linked files. If you link another layered PSD for example, you will see file savings since all it is saving is the flattened pixel output and nothing else.


The pixel preview it saves is scaled to its current size, so if you link a higher resolution image and scale it down it will only save the preview at the scaled down size, potentially giving you some file size reduction. But again, if it is a flat JPG your unlikely to save much on the original file size unless it is significantly scaled down. And if you're scaling your image up you're likely to add even more to the file size.


From Photoshop Help / Create Linked Smart Objects:



While Linked Smart Objects do not store the original file in the containing document, they still store a flattened and scaled version of the image data from the original file. In some cases, the size of this data may be much larger than the size of the original file




It's also worth noting that JPG is a compressed output format, simply opening a JPG in Photoshop as a PSD increases the file size significantly.


How to find/browse fonts that include certain rare characters? (unicode/international)


This question is similar to How to know which of my fonts do or don't support certain glyphs?, but for fonts in font shops, not just fonts I already have.


I need to make a design which includes two relatively rare international characters - ɔ and ɛ:



enter image description here


The vast majority of fonts don't support these characters. Arial does, and Arial Bold, but that's all I've found so far.


What I'd like to do, is find some font store or similar that lets me input the characters I need, and filters out fonts that don't include those characters, leaving me able to browse, choose between and hopefully buy from the few that do.


Does any such service or tool exist?




The above linked question has an answer suggesting going to https://www.myfonts.com/languages/ and choosing the appropriate language. Unfortunately, their languages list is, as they put it, a...



Work in progress


We realize this page is very sparse at the moment. We’re working on it!




...and the 15 options don't match my needs (those two characters are from Sierra Leoneon Krio, it'll be a while before that's added to their list!). So I really do need to search by character, not language.


That said, browsing their "IPA/Phonetic" fonts did turn up an amazing 13 fonts matching my characters, out of 43 (I guess if a font covers IPA, it might well cover everything). It's better than anything else I've tried, but it's not the filter I'm looking for.




It also suggests putting in the text as sample text then scrolling down until something can handle it. This helped with something like the IPA filter but for any other results set, I was literally scrolling past hundreds and hundreds before finding a single match.



Answer



myfonts.com does indeed provide one solution. In the advanced search form, select “available characters” from the field to search, “contains,” and type your character in the search box. Be sure to check the results by looking at the table of glyphs in each font, because I haven’t found the results absolutely reliable, but they do give you a start.


Where is the advanced search form? As on many sites, it shows up only after you do an ordinary search. Silly design, in my opinion, but there it is.


option pricing - Taylor series expansion (Volatility Trading book) explanation sought


I am currently reading Volatility Trading, I have only just started, but I am trying to understand a "derivation from first principles" of the BSM pricing model.


I understand how the value of a long call ($C$) and delta-hedged short position ($\Delta S$) in the underlying is given by:


$$ C - \Delta S_t $$


where



  • $C$ is the value of the long call option

  • $S_t$ is the spot price of the underlying at time $t$

  • $\Delta$ is the hedge ratio.



On page 9, I also understand that the change in the value of said portfolio, as the underlying moves from $S_{t}$ to $S_{t+1}$ is given by:


(1.2)


$$ C(S_{t+1}) - C(S_t) -\Delta(S_{t+1} - S_t) + r(C-\Delta S_t) $$


where the last term is money earned from reinvesting net received funds obtained in establishing the position at a rate $r$.


The change in the option value is then obtained via a second-order Taylor series approximation:


(1.3)


$$ \Delta(S_{t+1} - S_t) + \frac{1}{2}(S_{t+1} - S_t)^2\frac{\partial^2C}{\partial{S}^2} + \theta - \Delta(S_{t+1}-S_t) + r(C- \Delta S_t) $$


where $\theta$ is time decay.


I don't see how the author moves from equation 1.2 to equation 1.3, as it is not clear (at least to me) what function $f(x)$ he is approximating in 1.3


I would be grateful if someone could explain how the author makes the leap from equation 1.2 to the Taylor approximation (1.3) given on page 9.




Answer



He is approximating $C(S_{t+1})$ around $t$:


$$C(S_{t+1})=C(S_{t}) + \frac{\partial C(S_{t})}{\partial S_{t}}(S_{t+1}-S_{t})+\frac{(S_{t+1}-S_t)²}{2}\frac{\partial^{2}C(S_{t})}{\partial S_{t}^{2}} + ...$$


In addition, he takes the time value of $C(S_t)$ into account (and I look only at the time contribution here):


$$C(S_{t+1})-C(S_t)=\Delta t\frac{\partial C}{\partial t}+...=\Delta t\cdot\theta+..$$


There, the first equation is just the derivative of the option with regard to t. Usually, $\theta$ is the loss of the option value in a day, so it is just a question of normalization here. If you put everything together, you get the step you are looking at.


How can I indicate that a required field is only required for final Submission, but not for just being able to Save the form?



I have a form where there are several fields; some are required and some not. This form can be saved at any time so the user can come back to it later to complete it, but they won't be able to actually Submit it unless all the required fields are complete.


Crude mockup below:


mockup


download bmml source – Wireframes created with Balsamiq Mockups


Currently I have gone with the standard Asterisk * and a message at the top of the form that fields marked with * are required fields, but I'm a bit concerned that this is misleading, because they're only required for final submission and not for just saving the form for later.


Possibly I'm overthinking it, but is there a convention for 'some fields are required for submission but you can still save the record for later without completing everything'?




Wednesday, December 30, 2015

interaction design - Form for inputting operating hours of a business


I am designing an interface where restaurants need to input their operating hours. I am thinking of using a slider control for timings for a single day, and then let the user choose days of the week on which that timeline would be applicable.


The problem is, that some restaurants close for a few hours between their hours of operation. Any ideas on an elegant solution to this problem?


** Update **


This question got mentioned by Sacha Greif in his weekly newsletter, so I thought I should state the requirements more formally.



  • Restaurant owners should be able to put in their opening hours, including breaks between business hours & different hours on days of the week.

  • Days/ dates when restaurant is closed. This requirement came up from a tweet: enter image description here




  • The interface should primarily be aimed at restauranteurs who (we assume) might not be familiar with complex interfaces.

  • The goal is to encourage restauranteurs to sign up, and so minimal effort on their part is ideal while they're filling up the sign up form.


I appreciate the interest this question generated and welcome your suggestions.



Answer



This is a tricky interaction, mostly because it has to be super intuitive since the end users are not computer savy. I know it because I´ve had to deal with it in the past :)


I had the same problem while working in the UX team at 11870.com (a recomendations website similar to Yelp), this is the way we handled it, might not be the ideal solution but it worked fine and the restaurants and businesses had no problem configuring it:


The user chooses the open days and hours.


If the service is split (99% of restaurants split in 2 as much), clicking on "split service" shows two more selects and changes the text:" from x to x AND x to x" and the link changes to "continuous service" so the user can go back to the previous state.


The time frame is of half an hour. And as a default, the most common choice (09:00 to 17:00 here)



enter image description here


Below, we show the user the info And that is also how it will display in the page


Here is the tricky part..


You have to display it in an easy and understandable way that doesn´t turn into a huge block of info..


grouping is the key, group the days with the same schedule.


think of every possible combo, for example:



  • if user chooses all hours every day, display ”open all day” instead of showing all the days and hours which will be redundant.

  • If more than 2 consecutive days can be “grouped” on the same schedule, display “mon to wed”

  • if only the weekend is selected: display “weekends: from x to x”



etc...


you can see an example of displaying a tough selection (open mondays-thursdays in split hours + friday and saturday in another set of split hours + sunday in full schedule):


mon- thur: 13-16:30h / 20:30-0h fri and sat: 13-16:30h / 20:30-0:30h sun: 13-16:30h


check it live here: restaurant page in 11870.com




As per vacation time and special closing days, my recommendation is to create a different section or users will be easily confused.


For that, a calendar like interaction is best.


Differentiating normal opening hours and days from special vacation time, will also allow users to change one not affecting the other.


What should be the MANTRA for styling radio-buttons and checkboxes?



I am trying to style all the HTML elements by making a custom style sheet. Till now, i have succeeded in making only the radio-buttons and check-boxes. here is the link for the demo. I wanted to know what are the formal guidelines for UI designing while styling these controls so that they appear more clickable. And what more could be done to make the example more pleasant looking.



Answer



For this particular case, I would implement the following tweaks (some may be due to my personal preference, though):



  • I am not sure about having checkmark inside the radio button - it's totally uncommon, so I would switch to a dot instead. Right now only the shape of the radio button gives a clue that it is a radio, not a checkbox

  • switching the state should change the state inside the checkbox/radio instead changing the style of the element totally

  • you have a hover state while an element is not selected - it would be nice to provide the same for an element that is selected as well

  • I would block highlighting the field name (if someone double-clicks on text, the option gets highlighted).



usability - Indeterminate Progress Indicator Styles


When you have an operation that has too many factors to reliably give an estimate of actual progress towards task completion, you'll often find an indeterminate busy/progress indicator.


Through the course of the years I've seen approximately two groups of styles of progress bars that are indeterminate (please let me know if I'm missing a big one):





  • Actual Bars


    Windows Update Indeterminate Progress Bar




  • "Spinning" Circles


    Sample Spinning Indeterminate Progress Bar




The Question: Is there any great benefit to one over the other from a usability perspective (studies, articles, references would be great)?



I feel that the actual bar is nice as most bar controls in general allow you to later switch more seamlessly to an actual representation of overall progress, but in theory you could do the same with a spinner a well.



Answer



Rotation Better for Indeterminate Progress?


More speculation than anything else, but I suspect that some sort of rotary animation makes sense for indeterminate progress since circles have no beginning or end. Some users might be confused by an indeterminate linear progress bar like Windows uses:




  • At a first glance users cannot easily tell the difference between a determinate and indeterminate progress bar, so users have to look longer to determine what to expect.




  • Inexperienced users may fail to distinguish the determinate from the indeterminate and expect the process to complete when the bar reaches the right side; seeing it “start over from scratch” could be disappointing.





Bars Better for Determinate Progress?


There’s some evidence in the human factors literature that humans can perceive differences in length more precisely than differences in angle (e.g., see “Spatial Displays” in Wickens and Hollands’ Engineering Psychology and Human Performance). This suggests that bars are best for determinate progress. However, given progress indications generally provide relatively crude approximations of time remaining, I doubt it makes any real difference.


Rotary motion and a bar shape are not mutually exclusive, so you can have the potential benefits of both. Apple uses a linear progress bar for determinate progress, but a “barber pole” for indeterminate progress. The bar-shape is maintained for visual consistency but the rotary motion immediately indicates the indeterminate property.


Tradition


As for circles versus bars as practiced, I think it’s mostly a matter of tradition. Bars could be easily rendered in early character-cell PCs using IBM extended ASCII characters. Decent circles were almost impossible. The best you had was to cycle through the characters – \ | /, but that was only good for small subtle indeterminate progress displays.


Graphic capabilities improved greatly by the time the web was widely available to the public. As Andre notes, the first popular web browser was Mosaic which featured a globe in its logo on the tool bar (because it's the "World Wide Web"!). To show indeterminate progress when loading a page, the globe spun. Cute, and it set the precedent that's probably the origin of the circular progress indication in web-related things, including smart phones.


Future Work


Wouldn’t mind a study comparing circles with bars, but personally, I think time is better spent on research in metaphorically encoding more useful information into indeterminate progress bars. For example, for download progress, it would be helpful to distinguish between a poorly responding server (e.g., use jerkier abstract animation) and a large download moving bytes speedily along (e.g., faster cycling animation).



images - Adobe Photoshop XY coordinates export



I have tried to use amrok's script (given here).


I'm trying to export the XY coordinates of corner points of a selection - ideally to a text file...


Would you be able to help?




credit ratings - Scaling of a transition matrix


I am working on a ratings transition matrix and I wondered how people scale it down to shorter time periods (although one should more or less stick to the estimation period i know).



It is clear that one can scale it to a longer time period by repeatedly multiplying the matrix with itself.


How would you scale the matrix down to a, say monthly, transition matrix?


I found a result on reversible Markov Chains and thought the following:


Let $M$ be the transition matrix of a reversible markov chain, then one can factor it into $$ M = S D$$


with a symmetric matrix $S$ and a diagonal matrix $D$. It appears that also the converse holds true.


Now, if we had a reversible markov chain, we could raise the matrix to a fraction by taking the eigenvalue decomposition of $S = E^{T}\Lambda E$ and raising $S$ as well as $D$ to the appropriate power.


So we define


$$ \bar{M}:= E^T \Lambda^{\frac{1}{n}}E D^{\frac{1}{n}}$$ and say that $\bar{M}$ is now $M^{\frac{1}{n}}$.


The question is: Is this way appropriate? Does it make any sense (from a mathematical viewpoint - I know that downscaling a transition matrix is debatable)? Are ratings transition matrices from a reversible markov chain?


The main question is: What are the commonly used method to raise ratings transition matrices to a fraction?




Answer



You are right, the rules to time-scale a T-years transition matrix $M_T$ are:



  • $M_{k·T} = M_T^k$

  • $M_{T/k} = \sqrt[k]{M_T}$


The root of a matrix M can be obtained using the spectral decomposition:


$M = P·D·P^{-1} \Longrightarrow M^k = P·D^k·P^{-1}$


where $P$ and $D$ are the eigenvectors and eigenvalue matrices of $M_T$.


Note: The Perron-Frobenius tells that transition matrix eigenvalues satisfies |λ|≤1. This allows negative and complex eigenvalues. The following R code shows a transition matrix with a negative eigenvalue:



M = matrix(ncol=3, nrow=3, 0)
M[1,1]=0.1; M[1,2]=0.8; M[1,3]=0.1
M[2,1]=0.8; M[2,2]=0.1; M[2,3]=0.1
M[3,1]=0.0; M[3,2]=0.0; M[3,3]=1.0
eigen(M)

Note: As indicated in Regularization Algorithms for Transition Matrices, the root of a transition matrix can be an invalid transition matrix or may not be unique. In this case, we must transform this matrix to the relevant Markov matrix. This process is called regularization. In the referenced document there exist some algorithms to regularize a transition matrix.


Note: I suspect that the transition matrices with a single absorbent state and strictly diagonal dominant has ​​real and positive eigenvalues, but I have no proof.


You can obtain more info at CCruncher technical document.


Tuesday, December 29, 2015

regression - How to deal with missing returns when creating value (equal) weighted returns


recently I am doing cross sectional regressions, and getting confused about missing returns.


Suppose we have 100 stocks, then we want to construct a value weighted return (or equal weighted return). But the point is that the weights should be created in t-1 since we shouldn't use information which are not revealed to investors. But firm "A Corp" may have missing return for period t, then it has return record afterwards. Do we simply drop the return of "A Corp" for period t then rebalance our weights for the rest 99 firms? If we do rebalance the weights, it simply implies that investors are using the fact "A Corp" will have missing returns, which should not be revealed to the investors in t-1. If we do not rebalance the weights, then it is equivalent to impose that we have zero return for "A Corp".


How do guys you deal with missing returns in this case? Many thanks!!




adobe photoshop - Reducing PSD File size/selections



In trying to reduce file size for PSD, does eliminating saved selections do anything? I've found lots of useful tips, but none relating to selections. Thanks.




Why is $dS/S$ an estimate of realized volatility?


For one period, $dS/S$ is an estimate of realized volatility, which we can annualize by dividing with $\sqrt{\Delta t}$.


But.... why? How is $dS/S$ an estimate of volatility? Volatility is, to me, how big the random fluctuations are. But if I have a stock price that goes 100, 110, 120, 130, 140, 150, 160, every day, then that's not a random fluctuation, and the volatility is 0 .... yet, using above formula we get that the volatility is 0.1 for the first day.




Interaction of SPY etf with futures?


In the discussion to this question JoshK mentioned that the SPY etf has special interactions with futures contracts. I am curious what this interaction might be in particular?



Answer



in a previous question you were looking at using the VWAP price of SPY as a possible technical indicator or input variable in your investment decision process.


The difficulty that you are going to encounter is that SPY and the S&P 500 future (right now ESU9) are interchangeable. Here is a chart from Bloomberg showing SPY vs ESU9 from Bloomberg.


SPY vs ESU9



Now you can see that they trade in lock-step. There is a constant difference between the two of them - that's called the basis. The basis exists because of some technical factors that you can read about in a thousand other places.


Now there is a little friction when exchanging between futures and SPY's, but it's pretty simple overall.


This past Friday, for example, \$233b worth of ESU9 futures traded. Only \$18b of SPY traded in the same period. To make it even a little more complicated, SPY ETFs will trade some volume in the auction. Often the auction is just a few equity financing people exchanging shares with each-other. That really means little to anyone.


So I guess the point that futures dwarf SPY moves from a volume perspective.


You can have a whole other discussion about the importance of the underlying stocks, but that's for another time.


Monday, December 28, 2015

critique - Is this Dutch IJ ligature suitable and readable to native speakers?



I'm designing a display typeface and have designed, for the Dutch capital IJ digraph, a ligature that combines the "I" and "J" to form what looks like a broken "U".


Here is a comparison of my "IJ" ligature against the distinct "I" and "J" glyphs:


enter image description here


To give more context; the typeface I am designing is primarily a display face, with both upper and lower case in a number of weights:


enter image description here


The inconsistent spacing between weights is by design so that they can be layered or stacked as you can see in this example:


enter image description here


From what I understand, the 'broken U' form is acceptable, but I'm not sure if this is an acceptable, and easily readable, form for regular use. Most real-world examples I have seen in this form have been in signage or logos which is causing my doubt on it's suitability; but my exposure to Dutch is basically non existent.


Would a native Dutch speaker be surprised to see this form of ligature in a normal passage of text? Or is it more of a stylistic alternative? I'm also interested in whether this would be more suitable for a display typeface (as this is), or would it be equally suitable in a text face?


Here are some examples of the "IJ" in use:



enter image description here


enter image description here




Note, Implementing the Dutch IJ digraph as a ligature is asking about the technical implementation (through OpenType features); here I'm specifically asking about the suitability of the ligature design itself.




users - Verification of consequences


I have a situation where a user is about to do something with consequences important enough that it's imperative they understand them. In this particular case they are about to revoke their right to any kind of technical support for a service in exchange for being allowed access to beta or in-development features of said service.


Because the service terms are being modified as a result of their choice of action, it is of course very important that they understand what's going on or we risk very unhappy customers when we decline them technical support later on.


The issue I'm having is how to be absolutely certain that the user has understood what's going to happen without beating them over the head in an unprofessional manner. I could show them a full screen message in massive 80pt font saying "STOP, LISTEN AND PAY ATTENTION - THIS S**T IS IMPORTANT!" but as much as I'd like to, I've been told I can't do that.


The message we show to users at the moment is quite brief and to the point:


"You are about to enable in-development and beta features for this service. These features are not suitable for production use and as such we do not support them. If you use these features you will lose the right to any technical support while using this service until the features are disabled."


The message is accompanied by a large 'bomb inside a warning triangle' icon.



I've tried a few things so far and this is what I've found in user testing .



  • Making the user type in "I understand that if I do X, Y will happen" before allowing them to continue.


What happened here was the users saw that it was a 'I need to enter this text to carry on' and just copied and pasted the text without thinking about it and carried on.



  • Changing the message to be an image so it can't be copied and pasted.


The users reported annoyance. Apparently they are so eager to use these features that any barrier we put in their way (for their own good) makes them very impatient. Not only that but it didn't significantly help as many users still didn't acknowledge what was going to happen.




  • Quizzing the users


Users were made to answer a multiple-choice question. The options were "There will be no technical support", "There will be increased technical support" and "There will be no change to the amount of technical support". I was very annoyed to discover the number of users who picked #2.


I'm almost at the point of recommending we actually charge extra for access to in-development features and just use the extra money to cover the cost of supporting it. But I'd really rather not do that.


Are there any better ways of making really freaking sure that the user genuinely has read, understood and digested a single sentence that affects something they are paying money for? Or am I just wasting time.


Edit: I was just tapped on the shoulder and reminded of the introduction video at XDADevelopers - Any thoughts at how a slightly less harsh version of this would get through to users?


Edit 2: A bit more information about why technical support is being revoked. The service in question is actually SaaS whose job is to help manage game servers (We don't run the service ourself, game hosting companies licence it from us to provide the service to their end users). The beta features of the service in question generally tie to beta versions of the game server software being used which are notoriously unreliable and unpredictable - but the demand from users to use them anyway has been overwhelming (gamers being the impatient lot that they are). So the companies we work with have said they want a way to let users have access to beta facilities and to revoke their support because there's no way to make the support affordable anyway to avoid losing customers to smaller providers who don't care as much about the support cost or don't deliver the same level of support in the first place. This is something coming more from our customers than a requirement we've decided on ourselves.


Edit 3: After @MichaelZuschlag's suggestion we changed it to a single line of text saying "You need to lose access to technical support in order to enable beta features. [Why do I need to do this?]" and buttons labeled "Remove access to technical support" and "Keep technical support". Keeping the same warning triangle as before.


The users went from one extreme to the other. Almost all of them stopped and looked. More than three quarters of them clicked the 'why' link explaining what was going to happen and the reasons behind it.


Of those who clicked the 'why', the large majority accepted it and continued. Those who didn't largely declined.



We interviewed the users afterwards and they were concerned that the change was permanent, so I added the following line:


"You can restore access to technical support at any time by disabling beta features"


After that very few users clicked 'why' but most of them accepted. They were happy to agree to the terms with the understanding that they could simply 'go back' at any time, rendering the overall decision inconsequential.



Answer



This may be a case of the more you make users work, the less they try. I believe when confronted with a task, like trying to understand some content on a page, users do a quick estimate on whether the effort will be worth it or not.


Too often we present users with extensive content and clicking just to tell them something that they already know or don’t care about or won’t be able to understand anyway because it’s too technical or lawyerese. Often the content that yells the loudest is the least important to pay attention to. Think pop-up ads, upselling offers, liability disclaimers, privacy statements, terms of use, and spam. Who looks at any of that stuff? How often has looking at any of that ever change the user’s behavior?


From a cost-benefit perspective, it’s optimal for the users to blow through all that as quickly as they can. Adding games like filling out text boxes makes it worse. The more you add hoops to jump through, the more the user pays attention to jumping rather than what they’ll land in on the other side.


I would try to strip down the UI to just the most crucial information to minimize the cost of acquiring the understanding. Even your short "You are about to..." paragraph is too much. A single full sentence is too much. Any non-active text may be too much. User's eyes will skip right over it. But, if nothing else, users have to look at what they click in order to move on. Give them a page with just a title and two buttons:



Enable Beta Features



[Lose ALL Technical Support] [Cancel Beta Enabling]



That’s it. At most, include a “What?! Why?” link under the “Lose all tech support” button for anyone who wants to read the details. If you have any picture at all, don’t use the bomb image, which may be such obvious hyperbole that users ignore it (what yells the loudest…). Instead give a more informative image, like a picture of a guy on a phone with a big red X over it.


Worth a shot.


Great you’re doing user testing of it. Let us know how it works out.


image quality - How can we talk about the “resolution” of a JPEG file?


A JPEG is characterised with three parameters: width (pixel), height (pixel) and bit depth (bits per pixel). And resolution is a characteristic for output devices, e.g., monitors or printers. Why? Resolution is measured in dots per inch or pixels per inch, with other words: the ratio of some discrete value to some unit of length.


As we can see from JPEG file properties, it also has a horizontal/vertical resolution. But how can we apply the concept of resolution to something that does not have a length? (It sounds funny for me to talk about a “JPEG file with a width of 5 inches”.)


And another word to this is about user perception: Let’s assume we have a JPEG image with a width of 1920 px and we look at this picture on a monitor and an iPhone:



  • 24-inch wide-screen computer monitor: 1920 × 1200, 102.5 ppi

  • iPhone 6 Plus: 1920 × 1080, 401 ppi


So width is 1920 px in both cases and each pixel of the image corresponds to exactly one pixel of the device. So if we choose to look at these screens from a distance such that we have the same ratio of pixels per degree of vision, we would have exactly the same quality (≈ 70 PPD).


So why can we talk about the resolution of JPEG?





enter image description here



Answer



Resolution means wildly different things to wildly different people. And a image has many resolution metrics. It has:



  • A pixel resolution

  • A Color resolution

  • A Unit conversion resolution (PPI, DPI etc)


  • The there are some even odder rarely seen resolutions





    • Like the subpixel resolution of a lense on the sensor*


      ...






So the term resolution is heavily overloaded, and Very often misunderstood.


Images do not have physical unit resolutions on digital media



We have gone over this subject quite many times on this forum. And the consensus is that the physical measurement conversion values do not apply on digital media as long as they stay digital. So the resolution of a jpeg image is the amount of pixels you have. Because as you correctly put it different devices have different sizes.


Problem arises when you output stuff to physical media


The confusion arises because the technology of printing something to paper is wildly different form making images on screen. Now people from a print background will be somewhat obsessed with the resolution of the image. What they call resolution is actually just a conversion factor from pixels to physical units for their output device. (They have pixels to spare so they can output at different resolutions.)


This resolution is meaningless for screens. But people aren't entirely attuned to different mediums. So you commonly see some print designers design for screen as if it was a printer.


DPI is just metadata, its just a expression of wish that the printer place this image at this size. It's useful for many tasks so you don't always need to resize the image. But that's all it is.


But these guys came first so they have already manipulated perceptions so they have dibs on image resolution as a topic. Right or wrong.


* I'm just saying this because I have dealt with this kind of stuff.


Sunday, December 27, 2015

point of sale - Improve chip credit card reader processing messages


Chip card readers in the US started to roll out around a year ago. Since then, I've noticed from personal experience and the report of multiple cashiers that the displayed "DO NOT REMOVE CARD" messages on ~90% of them are largely ineffective, as many people still have difficulty with these readers and remove the card before the right time.



I have only been to one store with a terminal that displayed a positively-framed message instead of "DO NOT REMOVE CARD". This consistent negative phrasing seems almost, well, idiotic to me, because "DO NOT REMOVE CARD" has the positive words "REMOVE CARD" embedded within it. And as you know, people don't read, or don't read completely, and they probably have trouble processing the negative phrasing correctly.


I'm reminded of the advice given parents on how to help their kids be successful, by using positive commands such as "put your feet on the floor" instead of "don't put your feet on the table". It works for kids, and it should work for adults!


In addition, the terminal displays a couple of different messages during the waiting period, flashing in different locations, and going back to "DO NOT REMOVE CARD" a few times. An answer to a related question on the flashing itself suggests that the jumping around is specifically intended to help solve the early removal problem, but I think it actually worsens it, as each new presentation of an obviously different message triggers the person to think a new event has occurred, thus it must be the time to remove the card, and not recognizing the deceptive cognitive task of repeatedly & correctly reading a negatively phrased command, they do the wrong thing.


Imagine if traffic lights, while red, moved around to different red lights in different places, and you had to be sure that when it moved it had also changed to a green light. People would be constantly making false starts. Instead, it is the very stability of the red light staying steady that helps us to know it isn't time to go yet, and the green light is accompanied by not just a color change but movement to a light showing in a different place. (I bet that lights that simply changed color without moving to a physically separate location would be less effective.)


I think the terminals would be far more successful if instead they used as few words as possible, didn't flash or jump around at all, and phrased things positively:



  1. INSERT CARD

  2. WAIT

  3. REMOVE CARD



I suppose I could tolerate #2 being something like "READING CARD, WAIT", but I honestly don't see how this is any improvement over the single word. It's my opinion that with these simplified and steady messages, just like a traffic light, the general public will much more reliably perform the seemingly very simple task of not taking out the card until the right time, because they are only presented with one cognitive task of any weight: understanding that it is time to wait, and then the moment the display changes again, they know the process is done without even reading the message.


Even as a long time software developer who is passionate about good UX, and as someone who has been noticing this issue and focusing on it for the past year or so each and every time I've used a chip reader, I can get it wrong. The other day while on the phone I checked out at a self-checkout terminal and accidentally removed my card during a freshly-flashed "DO NOT REMOVE CARD" message, because my eyes hit on the "REMOVE CARD" portion and my mind was on the phone call. I promise you that had it said "WAIT" without changing to another message I would have correctly waited, even with my mind occupied elsewhere.


Do you think I'm barking up the right tree? Is there any research available that would support or negate my ideas on this?


Is there any way we can actually get this information over to the credit card terminal firmware makers so they can fix these ridiculous, awful UX devices?




What is the best data structure/implementation for representing a time series?



I was wondering what is best practice for representing elements in a time series, especially with large amounts of data. The focus/context is in a back testing engine and comparing multiple series.


It seems there are two options:


1) Using an integer index, or
2) Using a date-based index


At the moment I am using dates, but this impacts on performance & memory usage in that I am using a hash table rather than an array, and it requires some overhead in iteration (either forward or backwards) as I have to determine the next/previous valid date before I can access it.


However, it does let me aggregate data on the fly (e.g. building the ohlc for the previous week when looking at daily bars) and most importantly for me allows me to compare different series with certainty I am looking at the same date/time. If I am looking at an equity issue relative to a broader index, and say the broader index is missing a few bars for whatever reason, using an integer indexed array would mean I'm looking at future data for the broad index vs present data for the given security. I don't see how you could handle these situations unless you're using date/times.


Using integer indexes would be a lot easier code wise, so I was just wondering what others are doing or if there is best practice with this.



Answer



Representing time series (esp. tick data) using elaborate data structures may be not the best idea.


You may want to try to use two arrays of the same length to store your time series. The first array stores values (e.g. price) and the second array stores time. Note that the second series is monotonically increasing (or at least non-decreasing), i.e. it's sorted. This property enables you to search it using the binary search algorithm. Once you get an index of a time of interest in the second array you also have the index of the relevant entry in the first array. If you wrap the two arrays and the search algorithm e.g. in a class you will have the whole implementation complexity hidden behind a simple interface.



reference request - Does the rise in passive investing make the markets less efficient?


The general idea of efficiency in financial markets is that information is being processed almost instantaneously because active investors arbitrage away any arising price discrepancies.


On the other hand, more and more money is being allocated to passive investment vehicles (mainly ETFs) because of the empirical fact that active managers are not worth their fees and/or you cannot discern upfront those who will be worth their fees.


This obviously constitutes a paradox because if fewer and fewer active investors arbitrage away price discrepancies the case for passive investing begins to crumble...


I did a little googling and found lots of "opinions" on this, so the idea of this paradox as such is not new. What I did not find are any serious academic papers on the issue or some kind of consensus.



My question
To the best of your knowledge, is there some consensus on this matter and/or could you point me to good academic papers which thoroughly investigate this paradox (theoretically, by simulation or empirically)?



Answer



On more than a few occasions, I have attempted to extrapolate the current trend towards passive allocation to its logical conclusion: more passive allocation means more inefficiency.


I am not aware of any research which directly measures the correlation between market efficiency and active versus passive allocation. In general, the level of market efficiency should be hard to measure (see related topic: What are the empirical limitations to testing market efficiency?). However, I believe that the converse is indirectly measurable: pricing "anomalies" and/or risk-premia tend to dissipate following their discovery and/or the publication of a more efficient (i.e, "better") model.


If one concludes that the dispersion of knowledge regarding pricing inefficiencies has lead the market to become more efficient as market participants act on this knowledge, then one may tentatively accept the converse: the flight of capital away from active management may lead to greater inefficiency.


Examples of "alpha" diffusion and then decay abound. Notably:



  • Fama-French factors have decreased in efficacy over time. In the 2004 paper, "On the Cross-Section of Expected Stock Returns: Fama-French Ten Years Later", the authors found that "using the Fama-Mac Beth two-pass regression, that the size effect becomes insignificant during the post-1981 period, and the Book/Market effect becomes insignificant during the post-1990 period."

  • Following several papers on the momentum anomaly, notably with Carhart's 1994 paper, momentum's ability to predict future returns has notably diminished.


  • On a recent Master's in Business podcast with Barry Ritholz, guest Ed Thorp discusses the efficacy of the Black-Scholes model following its publication in 1973. Thorp had been using equations similar to the Black-Scholes for approximately five years before the paper was published. He noted in the interview that traders were slow to latch on to more rigorous pricing mechanisms, but eventually did so.


This concept of active versus management and inefficiency might be exemplified through a thought experiment in which all market participants woke up tomorrow fully believing in the absolute truth of EMH. These converts would then be motivated by the belief that active management is futile; allocation decisions would be purely driven by the mechanistics of MPT and mean-variance optimization. Throw out risk-premia, fundamental analysis, technical analysis, everything -- the market prices already reflect all expectations of future risk and reward. Given that it is impossible for the average money manager who charges fees to out-perform the "average", the shift towards passive management is justifiable. Yet, some price discovery through active allocation is necessary for the EMH to work.


The problems of herd behavior in the context of MPT are more eloquently outlined in the 2014 paper, "Modern portfolio theory and risk management: assumptions and unintended consequences", in which the authors define some problems underlying the assumption of MPT, namely: "information asymmetry and bounded rationality; the joint hypothesis problem and random walk hypotheses."


The question then may become, "how much active capital is required to provide an efficient price discovery mechanism?". To my knowledge, this remains an open question but I believe that the threshold whereby flight from active management leads to inefficiency may still be a ways off. Currently, I believe about half of the equity money managers are active versus passive. However, much of the assets under active management are actually passively managed (vis-a-vis, "closet indexing") as measured by a fund's "active share". While this seems like a lot of passive money, the dismal performance of hedge funds over the past decade is evidence that active management is still saturated. Moreover, the rise of algorithmic finance through vast computational power, data analytics, and instantaneous communication has probably left less room for active management to exploit anomalies and inefficiencies.


Is there a button configuration that would imply 2 or more options to the user?


My datagrid displays both wagons and locomotives tracked on a network. I find that I am often filtering out one of those types to display just the other and I would like to supply a wagon and a locomotive button which will do this in one click, but I still want to retain the possibility of displaying both types at the same time.


Is there a button configuration that would imply these options (wagons, locomotives, or both) to the user?



Answer



For this kind of filter, I recommend to use button group:


enter image description here


Buttons are easier to select and if you group these to show they work together, it is even more obvious for the user.


Conversely, a dropdown is not efficient because the options are hidden.



blur - How to create blurring layer in adobe illustrator


I'm interested in Gaussian blur layer that blurring all inside of some figure located on this layer.


I mean, blurred background of some exact area. And in case of I move this area, blurred image must be updated. If I move some object in background - blur must be updated. etc.



Answer



It sounds like you want to use an opacity mask (accessed through the Transparency panel).



  1. The masking object needs to be on a layer above the art it is masking. So, if you want to apply a Gaussian blur to the interior of some object, you would first make a copy of the object and paste in front (cmd-C, cmd-F).

  2. Convert the "copied" object to white fill and no stroke.

  3. Apply a Gaussian Blur to the "copied" object.


  4. Select both objects (the copied object and the original object).

  5. Using the Transparency panel, click the "Make Mask" button.


This will apply the Gaussian blur to the interior of the object. If you move the masked art, the masking object will move along with it.


Here's an Adobe video that explains and demonstrates how to use opacity masks. https://helpx.adobe.com/illustrator/how-to/illustrator-opacity-masks-transparency.html


Saturday, December 26, 2015

interface design - New generation of Save icon that is not a "disk"?



Currently, the save icon in almost all applications represents a 3.5-inch disk from the 20th century. An example from Microsoft Office 2010 is shown below:


Save icon



As we move towards more advanced technology, this "disk" save icon now seems obsolete. Kids born in 21st century might not even know what a disk is.


Is there any good alternative save icon out there that can replace this "disk" save icon in applications? Or, probably we can design a new save icon here and make it a standard? Ideally, the icon should not represent any hardware, because it will become obsolete again as technology evolves.


Very IMPORTANT Note:


This question is NOT to discuss whether we should change the "disk" save icon or not. I know the icon is still perfectly OK and friendly to the end users. There are questions on Stack Overflow and ux.stackexchange.com that discuss this.


I just want to look for good "save" icon that does not look like a disk (or hardware). Just take this question as a brainstorming or a design challenge. :)


At least one save icon image per answer please.




3d - Google Cardboard Design Lab - design style



What method was used to generate this look? I am particularly referring to the "tessellation" (?) that got them the triangled / polygon look and feel to the scenes.


Credit goes to UsTwo and the demos they created for Google Cardboard. I am interested in the look they achieved, both static and animated, ideally. What software and design principles should I be looking into?


enter image description here


enter image description here




How to handle language detection and suggestion?


In a website that offers translated versions of the website in various languages (6), how should we handle language detection and suggestion?


My theory is that:



  • Users hate splash screens in which you have to choose a language before you arrive at the website/page.

  • Users may arrive at the English version of a page, while they would prefer a different language.

  • Users like to be in control of the language version of a website, and do not expect to see a Korean version of a page, if they clicked an English page link in Google Search results while browsing from South Korea. The Korean version of the page would not match expectations of the page link, title and description that were in English.




My solution is:




  • Do not use splash screens




  • Do not auto-change language based on geo location when a user arrives at a page.





  • Offer a non-obtrusive way of notifying the user of a possible preferred language:
    Scenario:
    A user from South Korea arrives on English page of the website that also offers a Korean translation. Determine user's geo location and if country of visit does not match the active language and the language of the country of visit is available; offer a message (overlay pop-up, cookie-like bar at the top or bottom?) that notifies the user of the available language and offer to switch.




Is this a good practice or are there more user friendly solutions?




photo editing - Replicate curves adjustment in Photoshop


I edited an image with a curves adjustment on all the channels (RGB, red, green and blue). Now I want to know how those curves looked like, so I can use them again/edit them. But I made this edit a long time ago so I dont remember.


I have tried simply copying the original edit and managed to get it pretty similar. But not similar enough. The curves were very complex and that together with that I used all 4 channels, makes it very hard to get right.


I thought I had cracked it when I tried to split up the image in its red, green and blue channels. My idea was that it would be easier to copy if I focused on doing one channel at a time in black and white. Then I could save them as preset in Photoshop, and apply them combined to the original. But Ive just spent more than 2 hours getting not close enough on the red channel.


Im not very knowledgeable with curves. Do anyone have an idea on how to pull this off in practice? Could it be possible to "reverse engineer" it somehow?




Friday, December 25, 2015

Where is layer mode like "Color Dodge." in Photoshop CS 2?


I am new to Photoshop. I have searched a lot but didn't find any option like Color Dodge. So will you please help me for that?


I want to make the Photo as Pencil Sketch:


Pencil sketch image



And for that I want that option. I am using Photoshop CS2 for it.



Answer



Color Dodge can be found on the Layers Panel:


Layer's Panel


As well as one the Control Bar with a painting tool selected:


enter image description here


table of contents - Indesign - TOC divided in multiple categories


This is something related to the question "Indesign - TOC with one chapter heading, multiple page headings".


I'd like Indesign to generate a TOC like this one:



News



  • item 1

  • item 2


Culture



  • item 4

  • item 5



The problem is that my pages are not in order, which means that in the document there might be a News page first, then a Culture one, then another News one. It would be amazing if Indesign could put them automatically under the right category, but I'm not sure if it's possible.


Do you have any advices? Thanks.




website design - Placement of delete button on form


I have a form which edits a flight, and it should be possible to delete them. I have considered putting a delete button in the index page, which lists all the flights, but the table rows are clickable themselves and I did not wish to put a clickable element on another clickable element.


I created a quick mock-up to show what the position of the delete button would look like on the form.


Mock-up from flight form


I have identified two possible positions for the delete button:


1) Pulled right on the header. I fear users might not notice it, but it is positioned away from the save button and will prevent people from clicking it accidentally.



2) Next to the save button. Users will surely notice it but there is significant risk from clicking it accidentally.


Where would the delete button best be placed?



Answer



The problem with your current mock-up is that the 'Delete'-button is the most visible one. My immediate thought when I saw your mock-up was that the 'Delete'-button was the primary action. Although it's not flat enough for that your 'Save'-button looks disabled on first view. It doesn't jump out like the 'Delete'-button does.


Make sure your primary action is the most visible one. You could apply a green color to the 'Save'-button to make it clear to the user that that's the desired action.


Regarding the 'Delete'-button. Keep in mind that it's a secondary action, possibly has big consequences and won't be interacted with on every screen view (assuming the delete action is used far less often than the save action). Because of these reason I would not use a button at all, but a link instead.


Using a link instead of a button still makes it clear to the user that it's actionable, but at the same time you explain that the desired (and expected) action is to save rather than delete.


How to handle deletion


Keep in mind that users may accidentally delete a record, either by mis-clicking or by deleting a different record than intended. Therefor make sure to include Undo-functionality, or if that's not possible for some reason ask for a clear confirmation.


Don't over-do this do, lightboxes and similar modals break your user's mental flow and having to confirm every delete action, not matter how small the impact may be, is really annoying. Only require delete confirmation when the record is not easily restored (and when the Undo-functionality cannot be implemented)



When using a confirmation also consider the impact of the deletion. If the result of accidentally deleting a record is not easily restored you could implement a "speed bump" by asking the user to enter their password or a confirmation string when they are about to delete a record.


Take a look at how MailChimp does this:


Example of delete confirmation modal in MailChimp


Thursday, December 24, 2015

buttons - Should "Yes, delete it" be red, or green?


Designing an interface for a CMS (Content Management System), I stumbled upon a paradox and I'm a bit confused about what to do and why to do it..



Before deleting an album, the user is asked to confirm the action.


Green "Yes"


First option


Red "Yes"


Second option



Which option is more intuitive for the user?



Answer



Both ways seem to pose a false-positive paradigm. This can be simpler and not have to force the user to spend time making sense of the color-to-label association.


Simply make the "Delete" button more prominent. Make the "Cancel" button less prominent. In regards to the labeling within the buttons, there is no need to put much context into what essentially are simple actions (no/yes? or cancel/delete) as that requires more processing on the users part.


enter image description here


Users will usually associate an action such as "Remove" or "Delete" to red. And, as always, provide a way to "cancel" the action.


inkscape - Change the stroke width without changing the width and height of the rectangle


When I change the stroke width of a rectangle the width and and height change also. How can I prevent this from happening?




Importing SVG into Illustrator with proper viewBox size


When I try to open an svg file with Illustrator, Illustrator defaults to whatever artboard size was last used when a file was open. As such, the svg, if not the same size as the previous artboard, is then placed and auto-resized into that artboard.


Is there a workaround for this that does not involve opening a fake document with the artboard size of the svg, then closing that doc and File > Open the actual svg?


Note: I do not want to save the svg from Illustrator with the "preserve Illustrator editing capabilities" in the save as svg dialog.


You can test this with any svg, but here's a super simple one that is 320 x 240:






viewBox="0 0 320 240" enable-background="new 0 0 320 240" xml:space="preserve">

Why?



time series - Handling Missing values in stocks returns when estimating the co variance matrix


What is the best way to handle missing values when stocks did not exist for the entire historical period?.




Wednesday, December 23, 2015

fiction - What are the elements of a good blurb?


I'm writing a blurb. To do so, I'm using my favorite novels as examples. Here's one:


Kafka on the Shore by Haruki Murakami.



Kafka on the Shore follows the fortunes of two remarkable characters. Kafka Tamura runs away from home at fifteen, under the shadow of his father's dark prophesy. The aging Nakata, tracker of lost cats, who never recovered from a bizarre childhood affliction, finds his pleasantly simplified life suddenly turned upside down. Their parallel odysseys are enriched throughout by vivid accomplices and mesmerising dramas. Cats converse with people; fish tumble from the sky; a ghostlike pimp deploys a Hegel-spouting girl of the night; a forest harbours soldiers apparently un-aged since WWII. There is a savage killing, but the identity of both victim and killer is a riddle.


A once a classic quest, Kafka on the Shore is also a bold exploration of mythic and contemporary taboos, of patricide, of mother-love, of sister-love. Above all it is a bewitching and wildly inventive novel from a master stylist.




I noticed some elements. They ...


... introduce the main character/s: Kafka Tamura runs away from home at fifteen, under the shadow of his father's dark prophesy...


... introduce the secondary characters/events: Cats converse with people; fish tumble from the sky; a ghostlike pimp deploys a Hegel-spouting girl of the night; a forest harbours soldiers apparently un-aged since WWII.


... summarize the style/main themes: ... a bold exploration of mythic and contemporary taboos, of patricide, of mother-love, of sister-love.


This is mine:



Li-Mei is a typical university student, with a typical family, a typical dating life---and a typical suicidal wish. Yes, she wants to end it all. But after learning about a bizarre event, she decides to postpone her death to dive in into the world of animal suicide. In it she meets peculiar animals: starving cats, stranding whales, cliff-jumping cows, bridge-leaping dogs. Peculiar humans: an alcoholic visual kei, the founder of a controversial university club, and a conservationist with a unnatural childhood obsession. And finally a peculiar kind of love.


Driven by romance and dark humor, Animal Suicide is an exploration into relationships, passion, death, suicide, and the final meaning of our lives.



I wrote it by based of these elements. Are they the essential for a good blurb? If not, why? Are there others elements that I'm missing?




Answer



I like what's list of ingredients. I would add two more to consider:



  • Struggle. What keeps the character from achieving the goal? This might be antagonist or some other obstacle. What must the character do to achieve the goal?

  • Stakes. If the character fails, so what? What are the consequences to the character, the community, the world?


The key to a blurb is to let the reader know what kind of story this is, and what kind of experience they will have if they read it. Often the last line of the blurb (as in both yours and Murakami's) describes this directly.


I don't think you have to summarize the themes, necessarily, but do let readers know what kind of experience they will have. That last line is a sales pitch, not a literary analysis.


As for secondary characters and events, I would say do not describe anything secondary. You don't have much space in a blurb. Focus on the essence of the story: The main character, the character's goal, the setting (if it's essential), and any other essential ingredients that keep this story going.


In both your blurb and Murakami's, the middle is a list of fascinating things the character (and the reader) will encounter. This promises a series of magical, wondrous scenes. That does not appeal to me, but will be very attractive to readers who want a series of magical, wondrous scenes.



The ingredients of struggle and stakes might not fit a book about magic and wonder.


One thing you absolutely do not want to do (and you've nicely avoided this common problem) is to summarize the plot. This happened, and then this happened, and then this happened.


I would drop "however" and "the subjects of." The latter makes the book sound like a philosophy text.


website design - What DPI should be used for what situations?


I've been seeing the word 'DPI' pop up quite a lot when I export my work out in Photoshop and Illustrator. While I know that DPI stands for 'dots per inch', and that if you have too low of a DPI on an image, heavy pixellation occurs if you try to zoom in, what would be the optimal DPI for what situations?


For example (Situations):




  • Exporting a print A4 design

  • Website layout

  • Logo (Website only - Roughly smaller than the current SE Graphic Design one.)

  • Logo (Scaling up and down - From business cards to large banners.)



Answer



I've always thought DPI was somewhat of a misnomer... It really only applies if you are printing an image, otherwise, well, pixels are pixels. For an image on a site, well, it really doesn't matter, just get as many as possible, to fit the required size. Printers vary somewhat, but around 300 DPI is usually a good rule of thumb for anything around the size of a sheet of paper or smaller.


For Logos, I'd hope they are being designed in a vector program, which means the DPI can be adjusted to whatever the size is of the object.


Cluster analysis vs PCA for risk models?


I built risk models using cluster analysis in a previous life. Years ago I learned about principal component analysis and I've often wondered whether that would have been more appropriate. What are the pros and cons of using PCA as opposed to clustering to derive risk factors?


If it makes a difference, I'm using the risk models for portfolio optimization, not performance attribution.



Answer



I've played around with both schemes, but not for portfolio optimization.


I used PCA on some interest rate models. That turned into a Partial Least Squares scheme, then into some non-linear thing. I wasn't impressed with the results.


My Cluster Analysis scheme morphed into a classification scheme, and it turned out that the K-Nearest-Neighbor method worked just as well, and possibly better. Again, this wasn't for portfolio optimization, so it may not apply to your situation.


From what I've seen, if you're depending on the computational method to find excess returns (or lower risk), you'll probably be disappointed. On the other hand, it is common for various methods to highlight some problems that weren't originally obvious. For instance, bootstrapping your portfolio(s) to determine just how good they are compared to luck. I've dumped a lot of ideas because of that issue.



What is the best way to deal with very long form labels?


I have very long labels in some forms, including forms in modal windows. There are some cases we have labels with more than 80 chars, which is bad because:



  • Users need to read/track all the labels to identify the fields, and in most cases the most important word to identify the field is at the end of the label.

  • It's hard to design/align the form, because we have fields with very short labels in the same form.

  • It increases the vertical scroll of the page.

  • Aesthetically it's not good.


Below you will see the "bad" situation, just showing all the label as is:


Simple approach, not using any kind of grouping or abbreviation



Here is a study trying to fix this by:




  • Grouping the common terms in the label as a subtitle of a specified "section" in the form, and just showing in the top of the field the term that really differentiates one field to another.




  • Using tooltips to show the complete label to the users that might have some doubt about the field description.




More sophisticated approach trying to group similar fields, using subtitles and tootltips to define the complete label to help users that might have some doubt



Is the second approach good UX? Is there anything I can improve or fix? Is there another solution that is more correct?



Answer



You do not need any help here. You've understood and identified the problem with the first approach and have clearly addressed it with your study.


Neither a dedicated info icon or a focused tooltip for the full field label are right or wrong. This is an individual user's preference and could be iterated upon with user testing, but neither is incorrect.


Nice work identifying the issue and solving it with the first re-work.


usability - When to use a slider versus an input field for indicating a value?


For example, when you're indicating your weight / height, is it better to use a slider or should the user just type in the value?


In what instances should you use one or the other?




adobe photoshop - How to slice a huge image into smaller ones with 'Save for Web'



I have a huge image (1024*256000) which I want to slice horizontally into 100 images of 1024*256.


I'm using Adobe Photoshop CS6. I created the horizontal slices with the Slice tool and the Divide option.


Save for web allows me to save the images, but only at a 32.03% scale. If I try to change the Percent field to 100%, it gives me the following error:


A value between 0.01 and 32.03 is required. Closest value inserted.

Is there any way around this?




How to calculate other colors with the same perceived lightness as a given gray value?


This is related to a question I asked on tex.stackexchange, which has a color aspect. The result of that question is the following image:
value and saturation contrast


I have drawn a series of gray squares on the left, with a red branch departing to the right. The goal is to have different red squares with a different saturation, but all with the same gray value. In the hsv color model, they all have the same v, but when I convert the image to grayscale using Gimp, they are not converted to the same gray. Also the visual impression is that the red squares on the right are darker than those on the left.


How can I, given a certain gray, calculate colors with a certain hue and the same gray value (or, even better, with the same gray impression)? The colors used in the image are all calculated, so I prefer solutions that incorporate calculations as well.


I might have used wrong terms here - I'm a mechanical engineer, so please correct me where appropriate, or ask for clarification.





The suggestion to use the Lab color space has led me to some conclusions:




  • I can use the Lab model's L value to set some kind of gray value for different colors. In the hsv model this is v. I'm not sure if I am actually allowed to compare those, but I'll do it until someone complains.




  • In the hsv model I can also set some "base color" (a hue), which I can't find in the Lab model.





  • In the hsv model, I have 2 constants (in the image above: h = 0, v = 0.375) and one variable (s).




  • Up to this point, I only have one constant in the Lab model. That is not enough to generate something similar to what I already made with the hsv model.




I guess it's time for experiments.




Done! After I got the conversion code running, it was wuite easy. The first step was to define the "target red" on the right. I calculated RGB2Lab(255,0,0) and changed the L value of the result to the desired L in the figure (L = 62.5). The colors are calculated using a linear interpolation in Lab space from (L,0,0) to (L,aTarget,bTarget). The result:


enter image description here



Thank you!



Answer



You could use Lab colour space to find your matches. Colours with the same L value as your target gray will look nearly identical when converted to grayscale.


For example, a Lab gray of (50, 0, 0), will look very similar to the Lab reds (50, 30, 0), (50, 50, 30), and (50, 50, 50) when converted to grayscale. Samples below use Photoshop (Image > Mode > Grayscale) to convert from Lab to gray: Original Lab colours
Converted to grayscale


Tuesday, December 22, 2015

What is the significance of Relative Risk Aversion


I know that the relative risk aversion is defined as $$R(c) = cA(c)=\frac{-cu''(c)}{u'(c)}$$ where $u(c)$ denotes the utility curve as a function of wealth $c$.


But I do not understand the intuition for it. Can you explain the intuition for relative risk aversion?



Answer



In utility theory the basic assumption is that $u(c)$ is strictly monotonically increasing in wealth: people prefer more over less. Hence, $\forall c, u'(c) > 0$. The second assumption is that the amount of utility added, as $c$ increases, diminishes, so $\forall c, u''(c) < 0$. Combining these two observations we have that $$\forall c, A(c) = \frac{-u''(c)}{u'(c)} > 0.$$


This can be interpreted as follows, if for a particular $c$ $u'(c)$ is large $A(c)$ will be small. Thus if utility curve is sensitive to increases in wealth the risk aversion is low. For $u''(c)$ the reverse holds: if $u''(c)$ for a particular value of $c$ risk aversion will be low. $A(c)$ captures both sensitivities and also produces some kind of a trade-off between them.


The quantity $R(c)$ is just $A(c)$ scaled by the wealth. This scaling has the advantage that this quantity is not sensitive to a change in numéraire of $c$.



By the way, the Wikipedia page is excellent.


measuring - How can you embody 'luxury' qualities in UX design?



I recently observed a group of branding professionals brainstorming ideas for a luxury brand. They used a host of inspirations to hopefully inspire a sense of exclusivity and quality. These included Mercedes, Mont Blanc, Apple, and several fashion brands. The design of these conveyed luxury. I wondered how this is applied in the field of UX.


Imagine you are designing a site to convey similar characteristics to luxury products, the feeling of excellence, specialness. (Referring to quality in the sense of luxury.) i.e. The doors of a Mercedes and a Chevy both close but the Merc is designed to feel better.


I am not just thinking about aesthetics (as that might a question for a different board) but in different facets of the design and it's effect.


Can UX help achieve a feeling of luxury? If so, are there good analogies that might help communicate this to clients?



Answer



In addition to the HEART metrics (Happiness, Engagement, Adoption, Retention, Task Success) we also measure 1) new user adoption by whether or not training costs decreased and 2) existing user adoption by whether help calls decreased.


I'll try to answer your follow up question and to do so you must first understand the personality of the user's you're designing for. Think through all of the details about your users, from their personality to their socio-economic status to how they would interact with the system. (i.e. the personality of a Scion consumer will differ than that of a Lexus user). If you can add in unobtrusive details that cater to the user's personality it will help create that emotional connection with the system. Think of a quadrant like the one below (source) to help determine the personality and tone. enter image description here


Attention to detail is possibly the second most important aspect when creating something that feels well-rounded and polished. By not overlooking the details you make the user feel more valued, like you took the time to make sure everything was perfect. Go into the waiting room at a Lexus dealership vs. Toyota and you'll see how different everything is down to the flooring they choose.


As an interesting aside, I saw Billy Hollis speak recently and he talked about how advertising spaces for luxury stores typically have a lot of open space, defying the myth of horror vacui. Sometimes less is better and reducing "clutter" on a screen can help significantly.


Black-Equivalent Volatility



Can Someone Explain to me what this term means, and how it's used?



Answer



Quite a lot of options on asset $S(t) > 0$ have a payoff at tinme $T$ equal (at least approximately -- it's a bit more complicated in the case of e.g. credit index options)


$ (S(T) - K)^+ $


You can always find a number $\sigma$ such that, when plugged into Black formula together with strike $K$, spot price $S(t)$, interest rate $r$ and time to expiry $T-t$, you will recover the market price of the option $V(t)$. This number is called the Black implied volatility of the option. Basically, it's a quoting convention for the option prices. Traders use it because:



  • it makes it easier for them to compare prices of options on different days, with different strikes

  • Black vols tend to be similar across strikes and expiries (not always!)

  • it is better (in the sense: you're less likely to suffer lots of arbitrage) to interpolate market prices in the $\sigma$ space then directly; that is, if prices for strikes $K_1$ and $K_2$ are quoted, it's better to use some interpolation method on their Black vols $\sigma_1$ and $\sigma_2$ than on their prices $V_1$ and $V_2$

  • it fits their intution better (a paramount argument)



Are hourglass cursors still relevant?


I had a co-worker recommend that I set the cursor to an hourglass (probably the progress cursor as described here) while an operation completes, in a C# dialog. The operation can take a few seconds to a few minutes and is cancelable. There is also a timer showing how much time has elapsed. This program only runs on Windows.


But I haven't seen a wait/busy/hourglass cursor in quite some time, in either a desktop application or a webpage (although operating systems definitely use them, both Windows and OSX). I've seen a couple fragments from google searches about busy cursors being hated by UI designers but not a lot.


I'm pretty sure it's not a good idea for my specific case, but assuming that an application is otherwise responsive and well-behaved, is there a best practice regarding busy/hourglass cursors? Are they even helpful, or is it always better to have an explicit progress indicator in the form/page/window and omit the busy/hourglass cursor entirely so as not to confused the user?



Answer




The "busy" cursor and "background busy" cursor are frequent sights in Windows.


enter image description here enter image description here


You say, "...I haven't seen a wait/busy/hourglass cursor in quite some time." I believe this is because you have grown accustomed to them and no longer notice. Open Microsoft Word (2010), click on the "File" ribbon and click "save." You will see the "busy" cursor flash a few times. If you actually save a large document, you'll see that cursor again. This behavior exists in Adobe products, Microsoft products, IDEs, Open Source software and a large variety of software. These cursors are still there and still useful. These are not "operating system" using them, but applications. These application developers had to intentionally put the cursor in place; either by virtue of API or explicitly.


These are not only used by the OS, but also by any application. The icons serve an important purpose. In the case of the "busy" cursor, it indicates the the application/program will not accept input. In the case of the "background busy" cursor, it is an indicator the the application/program is in the process of performing an action, but that it will still accept input. The latter is useful to hint that the system may change while the user is interacting with the UI.


I believe these are still "relevant" and should be considered as part of any Windows or desktop design. This allows the user to continue to interact with the other applications and know that your application is "working." It conveys to the user something more meaningful than an unresponsive UI. This works two-fold: 1) The progress or "busy" indicator is seen only to apply to the area with mouse hover focus, 2) because the cursor is no longer a pointer, it reduces the users' expectation to use the cursor in the affected area.


If you are questioning the value of progress indicators in general: Is it bad UX to omit a progress indicator?


adobe illustrator - How to avoid decimals on position and size using pixels


I am using Adobe Illustrator CS6 to create small images (like icons) for my app so I need pixel precision.


How can I avoid X, Y, W and H properties to have decimals? Can I configure 0 decimals for this properties on my document?


If I use the textboxes with this properties it does right, it increases pixel by pixel, but when draggin with the mouse it uses up to 3 decimals.



Answer




Select the object and then tick the Align to Pixel Grid option on the Transform Panel.


This will force objects to snap to the nearest pixel. So, beware, paths will move and changes to match the pixel grid. And strokes are limited to nothing less than 1pt/px.


When creating a new document, you can also choose the option to Align New Objects to Pixel Grid in the New Document dialog window. You can also choose the Align New Objects to Pixel Grid item in the Transform Panel menu to make all newly created objects have the option set by default.


Monday, December 21, 2015

response time - Progress bar completing too quickly


I have a progress bar that takes place after a user uploads a file while the backend is running some processes. It looks like a standard progress bar that fills as the processing completes, like so: enter image description here



When the upload/processing is complete the bar is replaced with a text that says "Upload Complete".


If the file is larger it takes upwards of a few seconds to complete and provides a nice visual progression to let the user know nothing is frozen. The problem is if the user inputs a small file the processing time is quite low, this results in the user clicking "Upload", a progress bar flashing up and shifting some elements down then disappearing to be replaced with the success text all in fractions of a second.


I see a couple ways to combat this but I do not know which would provide the best UX.


1. Do nothing


One course of action, and surely the simplest from the development side would be to do nothing. Let the bar flash up and disappear in the whatever time it takes. If this happens too quickly it may be confusing or even disorienting to the user but it follows the natural progression the user would expect.


2. Add a small delay


Intuitively one would think purposefully adding any extra time to an application is a UX sin. But this article on adding delays to increase perceived value shows how Blogger added a small loading .gif that increased user satisfaction and reduced fear that something went wrong, which would be a real concern with my flashing loading bar.


3. Hide loading bar for small files


One course of action would be to determine which files will cause too short of a loading time and simply not display the bar in the first place. Users that upload large files will receive the same loading progression then completion status as before but users that choose small files will hit upload and momentarily see "Upload Complete". The problem I see with this is users who are familiar with seeing the progress bar may be throw off, I've been trained consistency is key but this would involve different UX experiences for different users. Plus, if I were to take this route how would I choose this threshold to display or hide the bar. Some users may take 3 seconds to fully perceive the bar being shown while some may only need 1 second.


4. Leave the bar up after 100% completion



Inversely to option #3 I could just leave the bar up reading 100% with the completion status "Upload Complete" under or beside the bar. This would eliminate the progress bar flashing up and disappearing immediately. However, on an already cramped mobile display showing a finished progress bar takes up precious real estate and isn't exactly the most appealing visual element. I could make it disappear after a set interval but that removes some locus of control and could still cause user confusion. It also brings back the threshold issue of #3 where I am unsure of how long to let the bar remain there, too quickly and it defeats the purpose, too long and it may be expected to be persistent and cause confusion when it is removed. I could make the user dismiss it themselves but that adds extra clicks to the process.


So I ask? What provides the most friendly UX for handling loading times that vary?



Answer



Here's another alternative: You mentioned you don't find the progress bar the most appealing, and it's taking up precious real estate. Would you consider a more compact preloader and success message that do not impact layout? Just as an example:


enter image description here


I don't know if that particular example would fit your situation. But if you can achieve a more compact design, you could leave up the success message (the check) after it's done loading without taking up a lot of space.


If something like this were used, there should be no issue with adding a small delay and forcing the animation to run (as per your idea #2). If the preloader does not impact layout, and if the user can continue doing whatever he's doing while the animation runs, it's not really delaying the user and shouldn't hurt user experience.


technique - How credible is wikipedia?

I understand that this question relates more to wikipedia than it does writing but... If I was going to use wikipedia for a source for a res...