30

I have a feeling this question might be moved to the Stackoverflow site but Its an interesting question. The reason behind this was because Fortran introduced the concept of using "=" as assigning values from one variable to another which led to a lot of confusion about what to use as an equality operator. To quote this wikipedia article. The use of the ...


29

The first time I saw this behavior was with Office 95. Word, to this day, still does this. In Word and Other applications like Notepad++, this cursor change indicates "a whole line" is the point of selection. Clicking while the cursor is in this state will select the entire line. Selecting an entire line is especially useful activity in text editors like ...


22

Simple answer is NO. Do not add artificial delays. But what if the message is important for all users? If its important you shouldn't put it at application loading screen. Most people don't even care to watch the loading screen, its usually a good time to leave the seat and go grab a soda or chips. In-case of Hybrid installers (i.e. installer that run ...


14

As a programmer, I prefer the line breaking to happen at the boundaries of words (assuming your assessment that line breaking is needed is correct). However, I would change the way you break. Instead of continuing at column 0, I think you should continue at the same column as the line you are breaking, and you should indicate somehow that it is not a real ...


12

It's a good combination of skills! UX + coder is an extremely desireable profile here in San Francisco. There a number of reasons for this: Modern app development is a lot less siloed than it used to be, with small sprint and scrum teams operating cross functionally and following the life cycle of a product from conception through design and ...


9

I've worked on visual programming systems/languages and I agree with Frederick Brooks. Graphical or diagrammatic or any kind of non-text based languages do not make good general purpose programming languages. Text is very efficient at describing complex things, especially behaviors and actions, usually much better than non-text. A picture is worth 1000 words ...


9

There are 4 types of application postures defined by Alan Cooper - Sovereign, Transient, Daemon, and Parasitic https://en.wikipedia.org/wiki/Application_posture A posture is nothing but the behavioral stance of the application. IDEs fall under sovereign applications that monopolizes the user's attention for long periods of time. Word processors, Image ...


7

Since it's a CLI, I don't think you need to explain too much. I'm assuming the end user is somewhat tech savvy, so they should be used to providing input the way you describe. My only recommendation is adding a hint at the end. i.e Do you wear glasses (y/n):


7

Breaking up words/names is a bad idea for the simple reason that it's hard to tell where the function name begins and where it ends. Names can be abstract which makes them even more difficult for the brain to stitch back together. The first just feels more natural and although still difficult to read, you quickly can understand that text is wrapping and ...


6

I have worked for a long time writing software for the financial industry, and I have to say that Excel is by far the most successful visual programming interface for non-technical users. Novice users start off working with simple rows and columns. They start "programming" with simple drag to select and sum a column (or some other simple operation), and ...


5

Checking equality is not used exclusively in if statements. For example: are_equal = foo == bar If the syntax would allow for using single equals sign, such assignment would be ambiguous: are_equal = foo = bar This could either mean "compare foo and bar, and assign the result to are_equal", or "assign bar value to both are_equal and foo".


5

One option is to set a minimum width on the code container and let the user scroll horizontally. Code that wraps unexpectedly is confusing at best, and in languages like Python it will appear completely broken. (This would be overflow-x: auto or scroll on the code element's parent in CSS.) 80 monospaced characters is often the default line length.


4

I have never heard of any wrapping algorithm that would break up words on anything but syllables (or soft hyphens). So breaking up a words at any arbitrary character is certainly not advisable. For programmers words in code are identifiers or operators etc. They only have meaning as a whole. So in this contexts even breaking up on syllables is ill-advised.


4

As a UX designer I design experiences, and that might not include the final wireframes. I very rarely get anywhere near final visual designs. I leave that to visual designers or interaction designers. Your portfolio is what I would call an interaction design portfolio. It includes a lot of the final product and what a few wireframes. In other places ...


4

Main reason: smarter and modern IDEs Line numbers are most of the times only needed when looking at stacktraces and errors etc. But the most modern IDEs have smart error tracing tools, and with a single mouse click the cursor will be placed on the line that generated the error. That's the main reason why line numbers are disabled by default, they are simply ...


4

UX as a term and discipline is somewhat new. Prior to it being called UX it was often call HCI (Human Computer Interaction). Today, now, aside from recent grads, most UX professionals do not have a User Experience Degree. The degrees and experience they do have can very wildly. Graphic Design (maybe lean towards UI Design) Industrial Design (also UI ...


3

The keyboard shortcuts that your application uses should be the ones that your users expect to use. Keyboard shortcuts are easiest to remember and most useful when they are consistent. As you have identified, you have two different consistency concerns here. Prioritize consistency with the OS and its conventions over consistency in your application across ...


3

The grid does align with the monospace font -- each glyph is two blocks tall and one block wide. It's a (not terribly effective in this case) way to help visualize the amount of indentation per line -- you can count grid spaces to determine the amount of indentation. (This is important in code: whitespace is significant in some languages, and in nearly ...


2

Boy is this a rock and a hard place. Definitely keep words intact. No programmer is going to like this (as is already clear), too much info is being removed by the indentation being mucked up. Breaking words doesn't solve this and it does add other problems. To make the best of a bad situation you need to clearly delineate lines. Your examples use zebra ...


2

I know the good way of wrapping for humans, including developers. The first way. You don't break words. If you do break words, they are not readable anymore. When reaching the wrap point, you may make it clearer that the line continues, by putting at the right a symbol like an arrow ⤶. Nice text editors do that.


2

Make a toggle: Linebreak [yes] or [no]. Depending on the programming language being displayed, inserted linebreaks will alter the execution of the code. Once you do break the code onto a new line, indicate this by adding the linebreak character at the end of the line. With a toggle you will be able to give the user of your application the option of making ...


2

While there's no definitive answer, reading code is still reading just like any other text and some guidelines indicate that 50-75 characters per line is a good number for English. The cognitive load of code is often far higher per line than it is in English so you probably want to err on the shorter side. I haven't seen any research on the specific column ...


2

im still fascinated about the software http://en.wikipedia.org/wiki/MeVisLab . It helps to see the flow of the app in kinda tree hierachy, but enables also developing extreme complex modules, that then a non-tech user can use for its own ideas.


2

I found the more successfull project in the field is a plugin for unity 3D : playmaker. Playmaker is a visual states machine that emphasize on helping games devellopper on main tasks and allow to iterate quickly with visual feedbak in real time. In fact maybe nodes are not the best visual system to help non programming people to understand code logic. Each ...


2

Our current workflow is: ...heavily waterfall and dependent on heavy documentation. This rarely works. If ever. And especially hard to pull off when the UX folks have no technical knowledge. Instead, I'd suggest adopting a more agile process. This doesn't have to be a formal agile process, but rather, embrace the idea of having your UX folks be a part of ...


2

Anecdotally, as a developer, it is more of a difference with knowledge in a Framework, rather than a specific language that affects speed. In your Objective-C/Swift example, your developer is going to be using the Cocoa or Cocoa Touch framework, regardless of language. If she knows exactly what views and controls AppKit/UIKit offers, their APIs, how to ...


2

IMHO, I don't think the question has one solution and also does not approaches the intent in the right way . This is a classic delivery mindset problem . Isn't it mandatory for the Front end developer to actually make sure the User experience is the numero uno priority , right from utilizing cache effectively to making sure there is no complex loops in ...


1

It's true, line numbers are generally off by default. Visual Studio also has the same behaviour. For general cases, line numbers are more often not wanted than they are wanted. Of course, that's not to say there aren't important situations where you want them on, including pair programming, stack trace examination, code referencing etc. If they were on by ...


1

Some good answers here, but my experience gives me a different one: no, marketing is not the closest. The closest is product management, at least how it's defined today. That said, a little background. I started as a tech journalist, moved into QA, then PM and UX work. Today I'm a PM/UX Designer. I got into UX out of necessity, but also because all UX ...


1

UX as a discipline is about anticipating and influencing people's behavior. You can come at that from just about any angle. Most commonly, you're either a designer, developer, researcher, or occasionally marketer. Wherever you come from, you'll be called on to impact business and marketing goals. That's the clear and present danger activities. Branding is ...


Only top voted, non community-wiki answers of a minimum length are eligible