MacBook, defective by design banner

title:
Put the knife down and take a green herb, dude.


descrip:

One feller's views on the state of everyday computer science & its application (and now, OTHER STUFF) who isn't rich enough to shell out for www.myfreakinfirst-andlast-name.com

Using 89% of the same design the blog had in 2001.

FOR ENTERTAINMENT PURPOSES ONLY!!!
Back-up your data and, when you bike, always wear white.

As an Amazon Associate, I earn from qualifying purchases. Affiliate links in green.

x

MarkUpDown is the best Markdown editor for professionals on Windows 10.

It includes two-pane live preview, in-app uploads to imgur for image hosting, and MultiMarkdown table support.

Features you won't find anywhere else include...

You've wasted more than $15 of your time looking for a great Markdown editor.

Stop looking. MarkUpDown is the app you're looking for.

Learn more or head over to the 'Store now!

Wednesday, February 03, 2021

StackOverflow flashback... Not sure who wrote this comment, and it's a little strongly worded, but man, they're on the money. ;^)

  • @samhocevar I can't believe you Little Bobby Tabled me. ;) If you're running text processed by client-side JavaScript on your database server without any safety checks, heaven help us all. ;^) Look, there shouldn't beย anythingย any user can send from a client (eg, Postman) that gets past your server's security. And youย shouldย assume anything dangerous that could be sent from a clientย willย be. That is, if you require 100% safetyย from client-side JavaScript codeย which isย alwaysย user editable, and you think this function could open a security risk, you're playing in the wrong game.ย โ€“ย ruffinย Feb 19 '18 at 18:57ย ย 

I hope that makes sense. Sure, it's not bad to include some safety checks client-side, but they really are just niceties. Maybe you check a few things for your user's user input without a round trip to the server, but only after you've already put those same rules into your server's code.

(This, btw, is why Node is so intriguing. Write once with both sides in mind and you get client-side niceties for "free". Otherwise, if you push me to shoving, I'd say an mvp should only have input validation on the server [in ways that make it easy to return error packages to the client to display]. (And thus the * in the title... you can have it on the client, but it's not worth anything from the point of view of security.))

Honestly, this dev taking me to task by saying people can get formatUnicorn (read: client-side JavaScript code) to inject strings into (again) client-side variables... I mean, I can't even. WHY NOT JUST INPUT THE WACKY STRING TO BEGIN WITH? And to think that anything in JavaScript protects your server... Ugh. So many bad programmers loose these days. I'd like to think they're junior, but imagine that's a senior dev that forces juniors to protect against string injection in client code, maybe client code only. /shiver

Labels: , , , ,


posted by ruffin at 2/03/2021 10:25:00 AM
Friday, April 08, 2016

Fixel throws down the gauntlet:

Our mobile app is equally as feature-rich as the desktop app (thereโ€™s only a slight feature differentiation), so as of today weโ€™ve raised the price of the mobile app from USD $49.99 to $249.99. This is still lower than our Cinemagraph Pro for Mac software at $299.99 (Our Flixel Cloud Web+Apps plan is available for only $199.99 annually, which provides access to both versions and our hosting and streaming service), but it bucks the trend of providing mobile apps for free or next-to-free, regardless of how rich the feature set.

"Bucks the trend of free or next-to-free", huh? That's not just a "buck"; that's a horse rolling on top of the rider, then tossing 'em back into the air, before drop-kicking them into the middle of next week.

But Fixel is an example of their own problem. There is no single app type. To say that there's a "trend of providing mobile apps for free or next-to-free" is to identify only the conditions of the dominant storefront. It's like saying that Northern Tool is bucking the trend of providing wrenches for next-to-free. The real insight, as Pieter Omvlee insightfully said at the 2015 Release Notes Conference, is that the iTunes App Store is a dollar store.

The problem with the iTunes App Store for many of us is that a dollar store is also likely not your store.

But no corner dollar store (when did 5 & Dimes die?) has millions on millions of items. That's a warehouse. Which tells us...

The iTunes App Store is actually two stores. It's a Dollar Store. And it's a policed warehouse that stores your app "inventory".

Apple allows your customers to enter the warehouse, but that doesn't guarantee your product will be on the showroom floor. The App Store is Ikea with a huge warehouse, that, um, only highlights knickknacks and cheap radios. That is, the showroom is a dollar store. Q.E.D.

You have to stop thinking of the App Store as your store, and think of it in these two ways. Again,

  • The App Store is a dollar store where you (and everyone else) can discover cute knickknacks.
  • It is also a warehouse that carries your app.

Just expect, if you want to clear that warehouse inventory, to sell your app yourself.

You don't have to target the dollar store if you're selling clothing, for instance. Don't. Don't be upset if the dollar store features your app. It's unlikely at $249.99, but if it happens, it's still good, free press. But open a storefront on the other side of the warehouse's block. Sell that inventory from your own store on the web.

Labels: , , , ,


posted by ruffin at 4/08/2016 09:27:00 AM
Tuesday, March 04, 2014

Stop Using The Cup of Coffee vs. $0.99 App Analogy | A Designer Life:

Fact: Starbucks Coffee is a Trustable Experience

I know Iโ€™ll like my cup of coffee. It will fully meet my expectations. For the $4 I spend I donโ€™t expect it to change my life. I donโ€™t expect it to even last beyond its last drop (and a trip to the bathroom later). Itโ€™s an experience I can fully trust will be pretty much the same each time. Thereโ€™s no gamble here. ...

In short, I know what Iโ€™m getting for $4 and Iโ€™m getting that same experience every time I hit the drive thru.

Fact: Your $1 App is a Total Gamble

Now, contrast this with your app, Mr. Developer. I donโ€™t know you from Adam. ... The return Iโ€™m going to get is questionable at best.... Iโ€™m assured of nothing. Last week I bought a game for 99 cents and it was terrible. I played it once, for 15 seconds. I could be shoving $1 straight down the toilet again for all I know. Your app, good sir, is a total gamble.

Note that he doesn't say your app. Okay, okay, that's wrong.  He does, very explicitly, say "your app", but the "you" there isn't you, the specific, real, quality app author.  It's "you" the composite app developer, that makes lots of unScottish (aka "crap") apps.  It's how the concept of "app developer" appears to your audience -- an author-persona, if you will.  (See, honestly, how many dev blogs mention Foucaultian terms?  No additional cost to you.  I know.)

How do you make your $4 app a trustable experience?  That's an app developer's -- any app store software developer's -- challenge.

Or, as Jeff Atwood says in App-pocalypse Now (linking to the post above):

Have you ever noticed that the people complaining about apps that cost $3.99 are the same people dropping five bucks on a cup of fancy coffee without batting an eyelash? Me too, and I'm with the coffee people. $3.99 for your app? Outraaageous!
...
Imagine you bought your coffee, only to open the lid and find it was only half full, or that it wasn't coffee at all but lemonade. If only 1 in 5 cups of coffee you bought actually contained coffee, a $3.99 price for that coffee starts to seem unreasonably high. When you buy an app, you don't really know what you're going to get.

Turns out, the precious resource here isn't the money after all. It's your time.

More specifically, it's your attention, but those terms are relatively interchangeable.

There's only so much attention to pass around.  Folks set aside time to take a look at new apps, with an expectation in their head of what they'd like to find.  It's like rushing to a store to take advantage of a sale.  If the item you want isn't there, you've wasted your time, and that, you can never get back.  You're not so upset that the item isn't there, but that you traded in your time trying to back it.

If I'm actively looking for an app that does X, I typically can't afford to try out 15 of them.  I have $5 set aside to find a great RSS reader.  I research.  I try out free alternatives.  I finally shell out for Unread.  I still feel it's not as good as it could be.  How many times to I shell out $5 trying to find a good one?  How long do I lurk around review sites?  When do you settle for what you've got/good enough?

How do you, as an app developer, rise to the top of that process?

Labels: , , , , ,


posted by ruffin at 3/04/2014 11:11:00 AM

<< Older | Newer >>


Support freedom
All posts can be accessed here:


Just the last year o' posts:

URLs I want to remember:
* Atari 2600 programming on your Mac
* joel on software (tip pt)
* Professional links: resume, github, paltry StackOverflow * Regular Expression Introduction (copy)
* The hex editor whose name I forget
* JSONLint to pretty-ify JSON
* Using CommonDialog in VB 6 * Free zip utils
* git repo mapped drive setup * Regex Tester
* Read the bits about the zone * Find column in sql server db by name
* Giant ASCII Textifier in Stick Figures (in Ivrit) * Quick intro to Javascript
* Don't [over-]sweat "micro-optimization" * Parsing str's in VB6
* .ToString("yyyy-MM-dd HH:mm:ss.fff", CultureInfo.InvariantCulture); (src) * Break on a Lenovo T430: Fn+Alt+B
email if ya gotta, RSS if ya wanna RSS, (?_?), ยข, & ? if you're keypadless


Powered by Blogger etree.org Curmudgeon Gamer badge
The postings on this site are [usually] my own and do not necessarily reflect the views of any employer, past or present, or other entity.