Programming & IT Tricks . Theme images by MichaelJay. Powered by Blogger.

Copyright

Facebook

Post Top Ad

Search This Blog

Post Top Ad

Responsive Ads Here

Archive

Post Top Ad

Contact


Editors Picks

Follow us

Post Top Ad

Fashion

Music

News

Sports

Food

Technology

Featured

Videos

Fashion

Technology

Fashion

Label

Translate

About

Translate

Sponsor

test

Weekly

Comments

Recent

Connect With us

Over 600,000+ Readers Get fresh content from FastBlog

About

Monday, January 15, 2018

Apple Will Reject Your Subscription App if You Don’t Include This Disclosure


Have you read Paid Applications Agreement, Schedule 2, Section 3.8(b)?

If you’ve ever submitted an app to the App Store, you know the frustration when Apple rejects your submission. Even more so when you thought you’d followed all the rules. As it turns out, Apple can bury requirements wherever they want, and it’s your burden to keep up.
About a year ago, Apple started rejecting apps that didn’t comply with Schedule 2, Section 3.8(b) of the Paid Applications Agreement, a verbose list of self-evident truths about subscriptions. The Paid Applications Agreement is a 37-page document that you had to agree to before you could submit your app. It is only available via iTunes Connect in the form of downloadable PDF.
The actual contents of Schedule 2, Section 3.8(b):
I really like the part about privacy policies.
3.8(b) requires that you “clearly and conspicuously disclose to users” all of the above bullets. The first few items seem harmless enough but then we start to get off into the weeds.
Apple wants you to reproduce, “clearly and conspicuously”, all the details of auto-renewing subscriptions. This information should be part of the standard StoreKit subscription purchase flow. None of these bullets have anything app specific to them. They are just boilerplate legalese.
iOS’s purchase UI, more than enough information.
Apple has an iOS level user interface flow for in-app purchases that is quite good as of iOS 11. This view already covers most of the in-the-weeds bullets, except telling users about the 24-hour renewal policy.
Requiring every developer to implement their version of 3.8(b) is costly and creates a fractured experience for the user. Apple should be putting it in the standard sheet. But it’s Apple’s walled garden. When they say jump, you say “fine, whatever.”

How to Comply With 3.8(b)

According to recent rejections that I’ve seen (as of Jan. 8th, 2018), reviewers are being more particular about what your purchase flow requires. From a recent rejection:
Adding the above information to the StoreKit modal alert is not sufficient; the information must also be displayed within the app itself, and it must be displayed clearly and conspicuously during the purchase flow without requiring additional action from the user, such as opening a link.
All of the information in 3.8(b) must be “displayed clearly and conspicuously during the purchase flow without requiring additional action from the user, such as opening a link.” Your beautiful and compact purchase flow must include in it, somewhere, nine bullets written by a lawyer.
Confide, recently updated, achieved it with the following:
According to one reviewer, being below the fold with a leading arrow qualifies as “clearly and conspicuously.”
For another data point, I know of one recently rejected developer who had the same information, but in another view that was linked from the purchase flow with a button. This did not qualify (according to one reviewer).

A Template

Include a customized version of the following “clearly and conspicuously” in your purchase flow:
A [purchase amount and period] purchase will be applied to your iTunes account [at the end of the trial or intro| on confirmation].
Subscriptions will automatically renew unless canceled within 24-hours before the end of the current period. You can cancel anytime with your iTunes account settings. Any unused portion of a free trial will be forfeited if you purchase a subscription.
For more information, see our [link to ToS] and [link to Privacy Policy].
Put it on the screen where you initiate the in-app purchase, below the fold might be OK, but you might want to put something to lead users there.
UPDATE: Readers are telling me it may also be required that you include it in your app store description. It’s a much easier change to include so I recommend you add it there to.

Why has Apple Taken a Legal Problem and made it Ours?

Apple shouldn’t be burying submission requirements in the bodies of contracts that nobody will read. If Apple wants developers to know something, they should put it in the App Store Guidelines, HIG, or developer documentation. The cost of making changes in a software project right at the end can be astronomical. Dropping a bomb like this on developers at submission shows a total lack of regard for our costs.
Why didn’t they just update the iOS in-app purchase sheet? I speculate that Apple discovered some legal exposure from in-app subscriptions and fixed it with lawyers instead of designers. This problem could be universally solved with an iOS update, but I think some side effect of Apple being a vast, lumbering bureaucracy made forcing 3.8(b) onto developers the more politically convenient path. Apple, if you are reading this, please either update the iOS sheet or move the requirements to the App Store guidelines, so fewer developers get caught unawares.
RevenueCat is the best way to implement subscriptions in your mobile app. We handle all the complicated parts so you can get back to building. Request an invite today at https://www.revenuecat.com/

Sunday, January 14, 2018

Nintendo’s Extra Lives


I’ve been wrong about Nintendo. So far. Happily.

Over the past few years, I’ve been pretty bearish when it comes to Nintendo’s long-term prospects as a standalone company. Okay, that’s probably putting it mildly. Yes, I’ve said Nintendo shouldn’t be running Nintendo and called the rumors of their death greatly under-exaggerated.
Then I sit down with my Nintendo Switch to play Super Mario Odyssey and I feel foolish. The game is that good. So is The Legend of Zelda: Breath of the Wild.¹ And I honestly haven’t even played Mario Kart 8 yet because I’ve been too busy with these two pieces of brilliance. And so on.
So, is Nintendo back?
The numbers suggest as much. The company just announced that the Switch is now the fastest selling console in the U.S. — ever:
The Switch has broken the US record for the fastest selling console ever, with 4.8 million units sold in just 10 months, Nintendo says. That shatters the previous record of 4 million US sales in the same time, also held by Nintendo with the Wii. Switch sales first opened on March 3rd, 2017, and it looks like strong holiday sales pushed the Switch over the top.
The story is similar worldwide, as the company’s profits have been boosted by strong demand for both the console and its games.
The company also managed to launch the SNES (Super Nintendo) Classic without the same disastrous results as they had with the NES Classic a year prior. Yes, it was still hard to get one throughout the holidays. But I was able to get one last week at regular, retail cost. So that’s another win, in my book.
It’s not all sunshine in the land of Mario. The company had to push back the roll-out of its 64GB cards — vital for large, third-party games — until next year. The reason why seems curious, at best. But it’s also unclear how much it will matter with their first-party titles being as good as they are right now. Nintendo should be able to continue surging for a while on those titles alone.
But it is still a hits-driven business. And the hits need to keep coming. And that’s why both the Zelda and Mario titles were so key last year: after the disastrous Wii U and the NES Classic fiasco, Nintendo needed to prove they still had it. And they did. And so I was wrong, for now. Something which I could not be happier about, honestly!
But what’s next? Seemingly a good pipeline of games for the Switch, both from a first and third party perspective. This should allow the console to ride out a successful run for a few years, at least. But the reality of our world is that Nintendo still needs to think about doing things slightly differently than they have in the past.
Super Mario Run was a good step in this direction from a pure gameplay perspective — but they got the business model wrong. With the Switch firing on all cylinders, Nintendo has time to figure this out. And it seems like they’re taking steps to make that happen.
It’s unclear where the online/subscription component of the Switch is, but at least they’re saying the right things in terms of why it’s taking so long:
The reason we’ve delayed the full paid subscription, is we want to make sure that as we get all of our learnings, and we build all of the elements, that we launch something that is robust for the consumer. And as they consider a $20 price point, they say ‘This is a no-brainer. This is something that I absolutely need to participate in given the full range of features that it provides.’
That’s why we’re delaying it, and it really is consistent with the overall Nintendo development philosophy. We want, when we launch it, for it to be great for the consumer. And not to be something that isn’t fully-featured and fully-capable. That’s why we delayed Breath of the Wild — and look at what we were able to finally launch.’
Of course, that was in June. So yeah, I still have some logistics/execution concerns with the company, to say the least…
My only other thought that I’ll continue to harp on: don’t discount the power of retro gaming. The company has now seen firsthand just how passionate fans will be with systems like the NES and SNES Classics.² They’re going to attempt to re-do the NES Classic screw-up, which is the right call.
I still think they should take this a step further, and make these consoles more than just one-off promotional gimmicks. I’d put resources into creating new games for these devices. One of the coolest aspects of the SNES Classic is that it comes with StarFox 2 — a game which had never been released before. More of this, please.
Better yet, open these systems up to third-party and indie game developers to turn them into retro gaming powerhouses. This may seem somewhat counterintuitive, but that’s the space in which Nintendo has always thrived. That, and their fantastic IP.
There is so much low-hanging fruit here. That’s why I made those calls for others to step in and save Nintendo. Could you imagine what Apple could do with such IP?! But such paths always run the risk of the new body rejecting the organ. Then again, have you seen what Disney has done with Lucasfilm?
Anyway, let’s all just hope this isn’t leading up to anagnorisis

¹ At the risk of blasphemy, I must admit that I’m enjoying the Mario game far more than the Zelda one. And I’m definitely Team Zelda (as opposed to Team Mario). Don’t get me wrong, Zelda is a beautiful game. But it’s complex. Mario is robust but pretty simple. It’s simply fun to play.
² We’ll see where Atari lands with their forthcoming “Ataribox” — I think the core concept is right, but at $249 or $299, I’m worried they’re shooting themselves in the foot…

Lenovo’s warranty upgrade is a SCAM


I bought a Lenovo Thinkpad with a Next Business Day Response warranty upgrade. The laptop I received was faulty. After 100 days, 51 mails and 27 calls, I still don’t have a working laptop. This is a story of unbelievable disorganization, amateur support and endless customer struggle with the largest PC maker in the world.

I am a PhD student at Imperial College London, and my department bought me a Thinkpad T470 earlier in 2017. When I first powered it on, the monitor was not working. Nothing. Black. I was a bit disappointed to see that my new business laptop had not even been tested before being delivered, but I was not too worried: the laptop was bought together with a On-Site service-Next Business Day Response warranty upgrade, meaning that Lenovo is supposed to come and fix any problem within one business day.
So on the 2nd of October I sent a service request. I had no idea of what was awaiting me.
DAY 1. The day after, Lenovo informs me that
the part required to repair your product is currently unavailable
and that
typically we are able to reschedule within 5 working days.
Ok, I paid for a warranty upgrade and they are not delivering what I paid for. But fine, it’s only 5 days after all. No? No.
After the 5 days, the display has not yet arrived. So I call and send emails to Lenovo, but nobody knows where is my display. Ok, no problem: you can simply send me a new laptop. You know, one of those things you sell in thousands of units every day? Maybe you could save one for me and take back your faulty one which was never able to boot? No way. I have to wait for the display. One more week.
Ok, one more.
You know what? No rush. Seven more days.
Oh, you actually need your business-oriented laptop for work? Ok, fine, we’ll come and fix it. But give us three more days, we have to buy costumes for Halloween.
DAY 29. The technician finally comes to change my display. And here starts one of the funny parts of the story. While the guy is replacing the display, I notice that he’s installing a glossy display instead of a matte one (like the original one). WHAT THE FUCK. Now, if you are a bit into computers and technology forums you know how glossy displays can be actual deal-breaker for some people (including me). And this guy was installing one without even asking nor noticing! Yes, it took one month to send the fucking wrong display. So I make him notice and…long story short: Lenovo has to send a new display. But at least, for sure, this time it will arrive in one business day! Right? My ass.
DAY 31.
I regretfully inform you that the part required for the repair of your product is currently unavailable. It should not take longer than 5 business days until our stocks are replenished.
You gotta be fucking kidding me. I live in London and I own one of the most popular business laptops produced in 2017. Are you seriously telling me that in ONE MONTH you could deliver only ONE display to the fucking biggest city of EU? Do you actually deliver a SINGLE display FROM CHINA every time someone needs a replacement? If so, how can you even expect to be able to deliver the next-business-day warranty you charge 150 bucks for? For me this has a clear name: SCAM.
Ok, ok. But at least it’s only 5 days. No? No:
ETA updated 5 times
The ETA keeps being postponed. In the meantime I call Lenovo about 6 times, but nobody seems to be able to do anything, nor let me talk to someone with higher decision-making power. For example, the decision to simply send me a fucking new laptop, as I’ve been requesting for more than a month. Nothing to do, Lenovo’s support is a stonewall. Same story for emails (many emails).
DAY 37. A guy from Lenovo Complaint Management contacts me. His name is Kim. Of course Kim doesn’t help at all, he just tells me what the ETA is, something I could easily lookup myself.
DAY 51. We are 6 days past the last ETA. I make calls and send emails. Nobody has a fucking clue where the display is and when it will be delivered. But still they don’t want to give me a new laptop.
DAY 56. Kim hasn’t answered my emails for one week. Once I tell him that I will move the discussion to public social networks, he immediately replies and offers me a laptop replacement. About fucking time! Finally I will have a working laptop within one business day!
Did you actually believe that?
The turn-around-time for the delivery is up to 4 weeks. We will keep you updated on the progress.
OMFG how the fuck can they be so slow at EVERYTHING? Ok fine, it doesn’t matter. I can wait. Just send me the fucking laptop and let’s forget this whole mess.
Of course I have to send them the faulty laptop before they ship the new one. So I give them the address, and in a few days a courier comes to pick up the laptop (DAY 58).
DAY 71. The new laptop has been dispatched! It’s still in China, but China is not too far off nowadays, right?
DAY 72. Ok, apparently they don’t have planes in China. The laptop needs to go to South Korea first. Oh, wait. No planes in South Korea either. Kazakhstan is the next stop.
DAY 73. OMG what is that? My laptop is already in Germany! It’s actually in my same continent now! I’m so excited!
DAY 74. UK! Go go go! It’s Friday though, it won’t arrive in time for the weekend :( Ok whatever, I will spend the weekend doing a backup of my old laptop.
DAY 77. LONDON! YES! This time it feels so real! I just need to sit and wait for my laptop to be delivered today. Fuck yeah!
Wait. WHAT THE FUCK IS THAT???
What the fuck does that mean? They’ve already used the address to come and pick up the old laptop. What’s the problem?
I call UPS. They tell me that the address given by Lenovo is completely fucked up. This is how it looks:
Andrea Gadotti, Andrea Gadotti, London, SW7
WHAT THE ACTUAL FUCK THEY COULDN’T EVEN GIVE THEM THE COMPLETE POSTCODE.
Ok, relax. I can simply give UPS the correct address, no? No. They have an agreement with Lenovo by which nobody but Lenovo can change the address, nor go and pick up the package at the UPS center. At this point I seriously stopped and checked if I was dreaming. Once I verified I was not, I started again with my favorite activity: making calls and sending emails to Lenovo.
Of course nobody at Lenovo can do shit, because everything is now managed by my old friend Kim. Too bad Kim doesn’t answer my email.
DAY 78. I send Kim another email. This is what I get:
Christmas holidays! Yeeeaaaahhhh. 3 fucking weeks of Christmas holidays. Note to self: after the PhD look for a job at Lenovo.
DAY 79. I send an email to Alexandros, as suggested. No answers. I slowly start to feel my laptop getting farther from me.
DAY 86. I’ve sent like 4 mails to Alexandros and Kim, apparently they are both too busy with Christmas to answer.
DAY 87. My laptop left London. Of course. It’s going to Netherlands. New emails to Kim and Alexandros. No answers.
DAY 93. The laptop has been delivered to Lenovo’s HQ in the Netherlands. Happy new year btw!
fuck
DAY 94. New emails to Kim and Alexandros. No answers. They really don’t like me :(
DAY 99. It’s January 9! You know what’s special about January 9? It’s the day Kim’s supposed to be back to work after his 3-week holidays. Great! I’m sure now he will fix everything and I will receive my laptop in one (+99) business day(s)! Right?
Mail from Jan 9
Fair enough. I don’t have a laptop, but at least I have a warranty on it. How could I possibly complain?

TO BE CONTINUED

UPDATE: After reading the comments I feel the need to point something out. I’m a long-time Thinkpad user: this laptop will be (hopefully soon) my fourth Thinkpad. I love Thinkpads and I believe that laptops from series T and X are the best portable PCs one can buy, especially if one runs Linux. For this reason, I’ve always recommended them to everyone who asked me for advice on which laptop to buy (which is a lot of people). And, in turn, this is the reason why I’m so sad that this is happening. After this bad experience I still believe Thinkpads are amazing, but it’s now clear to me that Lenovo’s customer support is simply awful. If you’re thinking about buying a Thinkpad, you should keep that in mind.

Beyond the Rhetoric of Algorithmic Solutionism


If you ever hear that implementing algorithmic decision-making tools to enable social services or other high stakes government decision-making will increase efficiency or reduce the cost to taxpayers, know that you’re being lied to. When implemented ethically, these systems cost more. And they should.
Whether we’re talking about judicial decision making (e.g., “risk assessment scoring”) or modeling who is at risk for homelessness, algorithmic systems don’t simply cost money to implement. They cost money to maintain. They cost money to audit. They cost money to evolve with the domain that they’re designed to serve. They cost money to train their users to use the data responsibly. Above all, they make visible the brutal pain points and root causes in existing systems that require an increase of services.
Otherwise, all that these systems are doing is helping divert taxpayer money from direct services, to lining the pockets of for-profit entities under the illusion of helping people. Worse, they’re helping usher in a diversion of liability because time and time again, those in powerful positions blame the algorithms.
This doesn’t mean that these tools can’t be used responsibly. They can. And they should. The insights that large-scale data analysis can offer is inspiring. The opportunity to help people by understanding the complex interplay of contextual information is invigorating. Any social scientist with a heart desperately wants to understand how to relieve inequality and create a more fair and equitable system. So of course there’s a desire to jump in and try to make sense of the data out there to make a difference in people’s lives. But to treat data analysis as a savior to a broken system is woefully naive.
Doing so obfuscates the financial incentives of those who are building these services, the deterministic rhetoric that they use to justify their implementation, the opacity that results from having non-technical actors try to understand technical jiu-jitsu, and the stark reality of how technology is used as a political bludgeoning tool. Even more frustratingly, what data analysis does well is open up opportunities for experimentation and deeper exploration. But in a zero-sum context, that means that the resources to do something about the information that is learned is siphoned off to the technology. And, worse, because the technology is supposed to save money, there is no budget for using that data to actually help people. Instead, technology becomes a mirage. Not because the technology is inherently bad, but because of how it is deployed and used.
READ THIS BOOK!
Next week, a new book that shows the true cost of these systems is being published. Virginia Eubanks’ book “Automating Inequality: How High-Tech Tools Profile, Police, and Punish the Poor” is a deeply researched accounting of how algorithmic tools are integrated into services for welfare, homelessness, and child protection. Eubanks goes deep with the people and families who are targets of these systems, telling their stories and experiences in rich detail. Further, drawing on interviews with social services clients and service providers alongside the information provided by technology vendors and government officials, Eubanks offers a clear portrait of just how algorithmic systems actually play out on the ground, despite all of the hope that goes into their implementation.
Eubanks eschews the term “ethnography” because she argues that this book is immersive journalism, not ethnography. Yet, from my perspective as a scholar and a reader, this is the best ethnography I’ve read in years. “Automating Inequality” does exactly what a good ethnography should do — it offers a compelling account of the cultural logics surrounding a particular dynamic, and invites the reader to truly grok what’s at stake through the eyes of a diverse array of relevant people. Eubanks brings you into the world of technologically mediated social services and helps you see what this really looks like on the ground. She showcases the frustration and anxiety that these implementations produce; the ways in which both social services recipients and taxpayers are screwed by the false promises of these technologies. She makes visible the politics and the stakes, the costs and the hope. Above all, she brings the reader into the stark and troubling reality of what it really means to be poor in America today.
“Automating Inequality” is on par with Barbara Ehrenreich’s “Nickel and Dimed” or Matthew Desmond’s “Evicted.” It’s rigorously researched, phenomenally accessible, and utterly humbling. While there are a lot of important books that touch on the costs and consequences of technology through case studies and well-reasoned logic, this book is the first one that I’ve read that really pulls you into the world of algorithmic decision-making and inequality, like a good ethnography should.
I don’t know how Eubanks chose her title, but one of the subtle things about her choice is that she’s (unintentionally?) offering a fantastic backronym for AI. Rather than thinking of AI as “artificial intelligence,” Eubanks effectively builds the case for how we should think that AI often means “automating inequality” in practice.
This book should be mandatory for anyone who works in social services, government, or the technology sector because it forces you to really think about what algorithmic decision-making tools are doing to our public sector, and the costs that this has on the people that are supposedly being served. It’s also essential reading for taxpayers and voters who need to understand why technology is not the panacea that it’s often purported to be. Or rather, how capitalizing on the benefits of technology will require serious investment and a deep commitment to improving the quality of social services, rather than a tax cut.
Please please please read this book. It’s too important not to.
Data & Society will also be hosting Virginia Eubanks to talk about her book on January 17th at 4PM ET. She will be in conversation with Julia Angwin and Alondra Nelson. The event is sold out, but it will be livestreamed online. Please feel free to join us there!

Saturday, January 13, 2018

Facebook’s newsfeed changes: a disaster or an opportunity for news publishers?


Social media and digital executives in newsrooms already have a tough job connecting their content to consumers via social media, but Facebook’s proposed changes in the algorithms of its ‘newsfeed’ are going to make it a lot harder. Social networks offer immense opportunities for reaching vast new audiences and increasing the engagement of users with journalism. The most important platform in the world is about to make that more difficult.
Clearly, this is a blow for news publishers who have spent the last decade or so fighting a battle for survival in a world where people’s attention and advertising have shifted to other forms of content and away from news media brand’s own sites. They are clearly very concerned. Yet, could this be a wake-up call that will mean the better, most adaptive news brands benefit?
I’m not going to argue that this is good news for news publishers, but blind panic or cynical abuse of Facebook is not a sufficient response. The honest answer is that we don’t know exactly what the effect will be because Facebook, as usual, have not given out the detail and different newsrooms will be impacted differently.
It’s exactly the kind of issue we are looking at in our LSE Truth, Trust and Technology Commission. Our first consultation workshop with journalists, and related practitioners from sectors such as the platforms, is coming up in a few weeks. This issue matters not just for the news business. It is also central to the quality and accessibility of vital topical information for the public.
Here’s my first attempt to unpack some of the issues.
Mark Zuckerberg: making time on Facebook ‘well spent’
Firstly, this is not about us (journalists). Get real. Facebook is an advertising revenue generation machine. It is a public company that has a duty to maximise profits for its shareholders. It seeks people’s attention so that it can sell it to advertisers. It has a sideline in charging people to put their content on its platform, too. It is a social network, not a news-stand. It was set up to connect ‘friends’ not to inform people about current affairs. Journalism, even where shared on Facebook, is a relatively small part of its traffic.
Clearly, as Facebook has grown it has become a vital part of the global (and local) information infrastructure. Other digital intermediaries such as Google are vastly important, and other networks such as Twitter are significant. And never forget that there are some big places such as China where other similar networks dominate, not Facebook or other western companies. But in many countries and for many demographics, Facebook is the Internet, and the web is increasingly where people get their journalism. It’s a mixed and shifting picture but as the Reuters Digital News Report shows, Facebook is a critical source for news.
From Reuters Digital News Report 2017
If you read Zuckerberg’s statement he makes it clear that he is trying to make Facebook a more comfortable place to be:
“recently we’ve gotten feedback from our community that public content — posts from businesses, brands and media — is crowding out the personal moments that lead us to connect more with each other.”
His users are ‘telling him’ (i.e. fewer of them are spending less time on FB) what a plethora of recent studies and books have shown which is that using Facebook can make you miserable. News content — which is usually ‘bad’ news — doesn’t cheer people up. The angry, aggressive and divisive comment that often accompanies news content doesn’t help with the good vibes. And while the viral spread of so-called ‘fake news’ proves it is popular, it also contributes to the sense that Facebook is a place where you can’t trust the news content. Even when it is credible, it’s often designed to alarm and disturb. Not nice. And Facebook wants nice.
One response to this from journalists is despair and cynicism. The UK media analyst Adam Tinworth sums this approach up in a witty and pithy ‘translation’ of Zuckerberg’s statement:
“We can’t make money unless you keep telling us things about yourself that we can sell to advertisers. Please stop talking about news.”
Another accusation is that Facebook is making these changes because of the increasing costs it is expending at the behest of governments who are now demanding it does more to fight misinformation and offensive content. That might be a side-benefit for Facebook but I don’t think it’s a key factor. It might even be a good thing for credible news if the algorithmic changes include ways of promoting reliable content. But overall the big picture is that journalism is being de-prioritised in favour of fluffier stuff.
Even Jeff Jarvis, the US pioneer of digital journalism who has always sought to work with the grain of the platforms, admits that this is disturbing:
“I’m worried that news and media companies — convinced by Facebook (and in some cases by me) to put their content on Facebook or to pivot to video — will now see their fears about having the rug pulled out from under them realized and they will shrink back from taking journalism to the people where they are having their conversations because there is no money to be made there.”*
The Facebook changes are going to be particularly tough on news organisations that invested heavily in the ‘pivot to video’. These are often the ‘digital native’ news brands who don’t have the spread of outlets for their content that ‘legacy’ news organisations enjoy. The BBC has broadcast. The Financial Times has a newspaper. These organisations have gone ‘digital first’ but like the Economist they have a range of social media strategies. And many of them, like the New York Times, have built a subscription base. Email newsletters provide an increasingly effective by-pass for journalism to avoid the social media honey-trap. It all makes them less dependent on ‘organic’ reach through Facebook.
But Facebook will remain a major destination for news organisations to reach people. News media still needs to be part of that. As the ever-optimistic Jarvis also points out, if these changes mean that Facebook becomes a more civil place where people are more engaged, then journalism designed to fit in with that culture might thrive more:
“journalism and news clearly do have a place on Facebook. Many people learn what’s going on in the world in their conversations there and on the other social platforms. So we need to look how to create conversational news. The platforms need to help us make money that way. It’s good for everybody, especially for citizens.”
News organisations need to do more — not just because of Facebook but also on other platforms. People are increasingly turning to closed networks or channels such as Whatsapp. Again, it’s tough, but journalism needs to find new ways to be on those. I’ve written huge amounts over the last ten years urging news organisations to be more networked and to take advantage of the extraordinary connective, communicative power of platforms such as Facebook. There has been brilliant innovations by newsrooms over that period to go online, to be social and to design content to be discovered and shared through the new networks. But this latest change shows how the media environment continues to change in radical ways and so the journalism must also be reinvented.
Social media journalist Esra Dogramaci has written an excellent article on some of the detailed tactics that newsrooms can use to connect their content to users in the face of technological developments like Facebook’s algorithmic change:
“if you focus on building a relationship with your audience and developing loyalty, it doesn’t matter what the algorithm does. Your audience will seek you out, and return to you over and over again. That’s how you ‘beat’ Facebook.”
Journalism Must Change
The journalism must itself change. For example, it is clear that emotion is going to be an even bigger driver of attention on Facebook after these changes. The best journalism will continue to be factual and objective at its core — even when it is campaigning or personal. But as I have written before, a new kind of subjectivity can not only reach the hearts and minds of people on places like Facebook, but it can also build trust and understanding.
This latest change by Facebook is dramatic, but it is a response to what people ‘like’. There is a massive appetite for news — and not just because of Trump or Brexit. Demand for debate and information has never been greater or more important in people’s everyday lives. But we have to change the nature of journalism not just the distribution and discovery methods.
The media landscape is shifting to match people’s real media lives in our digital age. Another less noticed announcement from Facebook last week suggested they want to create an ecosystem for local personalised ‘news’. Facebook will use machine learning to surface news publisher content at a local level. It’s not clear how they will vet those publishers but clearly this is another opportunity for newsrooms to engage. Again, dependency on Facebook is problematic, to put it mildly, but ignoring this development is to ignore reality. The old model of a local newspaper for a local area doesn’t effectively match how citizens want their local news anymore.
What Facebook Must Do
Facebook has to pay attention to the needs of journalism and as it changes its algorithm to reduce the amount of ‘public content’ it has to work harder at prioritising quality news content. As the Guardian’s outstanding digital executive Chris Moran points out, there’s no indication from Facebook that they have factored this into the latest change:
Fighting ‘fake news’ is not just about blocking the bad stuff, it is ultimately best achieved by supporting the good content. How you do that is not a judgement Facebook can be expected or relied upon to do by itself. It needs to be much more transparent and collaborative with the news industry as it rolls out these changes in its products.
When something like Facebook gets this important to society, like any other public utility, it becomes in the public interest to make policy to maximise social benefits. This is why governments around the world are considering and even enacting legislation or regulation regarding the platforms, like Facebook. Much of this is focused on specific issues such as the spread of extremist or false and disruptive information.

JavaScript — Null vs. Undefined


Learn the differences and similarities between null and undefined in JavaScript

At first glance, null and undefined may seem the same, but they are far from it. This article will explore the differences and similarities between null and undefined in JavaScript.

What is null?

There are two features of null you should understand:
  • null is an empty or non-existent value.
  • null must be assigned.
Here’s an example. We assign the value of null to a:
let a = null;
console.log(a);
// null

What is undefined?

Undefined most typically means a variable has been declared, but not defined. For example:
let b;
console.log(b);
// undefined
You can also explicitly set a variable to equal undefined:
let c = undefined;
console.log(c);
// undefined
Finally, when looking up non-existent properties in an object, you will receive undefined:
var d = {};
console.log(d.fake);
// undefined

Similarities between null and undefined

In JavaScript there are only six falsy values. Both null and undefined are two of the six falsy values. Here’s a full list:
  • false
  • 0 (zero)
  • “” (empty string)
  • null
  • undefined
  • NaN (Not A Number)
Any other value in JavaScript is considered truthy.
If you’re not familiar with truthy/falsy values in JavaScript, I recommend reading my previous article: JavaScript — Double Equals vs. Triple Equals
Also in JavaScript, there are six primitive values. Both null and undefined are primitive values. Here is a full list:
  • Boolean
  • Null
  • Undefined
  • Number
  • String
  • Symbol
All other values in JavaScript are objects (objects, functions, arrays, etc.).
Interestingly enough, when using typeof to test null, it returns object:
let a = null;
let b;
console.log(typeof a);
// object
console.log(typeof b);
// undefined
This has occurred since the beginning of JavaScript and is generally regarded as a mistake in the original JavaScript implementation.
If you’re not familiar with data types in JavaScript, I recommend reading my previous article: JavaScript Data Types Explained

null !== undefined

As you can see so far, null and undefined are different, but share some similarities. Thus, it makes sense that null does not strictly equal undefined.
null !== undefined 
But, and this may surprise you, null loosely equals undefined.
null == undefined
The explanation as to why this is true is a little complex, so bear with me. In JavaScript, a double equals tests for loose equality and preforms type coercion. This means we compare two values after converting them to a common type. Since both null and undefined are falsy values, when we compare them with loose equality, they are coerced to false prior to comparison.

Practical Differences

All of this is great, but what about a practical difference between null and undefined?
Consider the following code snippet:
let logHi = (str = 'hi') => {
  console.log(str);
}
The code above creates a function named logHi. This function requires one parameter and sets the default of that parameter to hi if it isn’t supplied. Here’s what that looks like:
logHi();
// hi
We can also supply a parameter to overwrite this default:
logHi('bye');
// bye
With default parameters, undefined will use the default while null does not.
logHi(undefined);
// hi
logHi(null);
// null
Thanks to Tim Branyen for the code inspiration.

Summary

  • null is an assigned value. It means nothing.
  • undefined typically means a variable has been declared but not defined yet.
  • null and undefined are falsy values.
  • null and undefined are both primitives. However an error shows that typeof null = object.
  • null !== undefined but null == undefined.

Friday, January 12, 2018

How much will MVP app design cost in 2018


MVP is a great way for your app to find its early adopters, investors and even customers. But, experience has shown that raw MVP without, at least, tolerable UI and UX fails miserably. OK, but how much will MVP app design cost me? Spoiler: not much. And you will be surprised with the result.
What is the point of an MVP? To show off the core features of your app to a target audience and investors before even starting the development. In other words, to test the waters.
However, it doesn’t mean at all that you have to produce an ugly monster with absent UI. As one more crucial goal of MVP is to find your customers. Great UI in pair with convenient UX is your key to success.
But what is the cost of MVP app design? How much resources you have to spare on design purposes? Let’s find it out.

Preparations

To get more or less decent design of your MVP you can’t just draw some lines and boxes on a napkin and give it to a design company or freelancers. Actually, you can do that, but it will cost you, and a lot. We’ll talk about that further on. Now let’s get back to the point.
If you want to save time and, consequently, money it is a good idea to get prepared, prior meeting with a design agency. Wireframe and some mockups are pretty much everything you might need.
Moreover, by presenting comprehensive app wireframe and mockups, you can be sure that there won’t be any unpleasant surprises. As a hired freelancers or guys from a contracted agency will know for sure what end-result they are ought to provide.

Wireframe of the app

A skeleton of your app. That is a rough, or even drawn on a napkin (yes-yes), layout of the navigation, screens and elements in your app. It also outlines the core features of it. And the best thing is that you finally have a, more or less, complete idea of your app.
Sure thing, making a wireframe is more than DIY-appropriate. Tools like Bootstrap may come in handy here. The coolest part is, that almost none programming skills are required. Only basic knowledge of HTML and CSS. And, probably, some video guides. :)
With available templates, you’ll be capable of building a rough layout within hours. Plus it is completely free. Unless you’ll require some advanced templates. But you can always look out for those on the other platforms.
Needless to say, it will help a lot for the initial pitching session. Even if you decide to entrust all this job to an agency — some minimum wireframe would be very helpful prior approaching them.
On the average, wireframe might take 10–30 hours in development. It might cost you nothing if you’ll do it by yourself. But if you’re going to ask an agency — $500 — $3.000 would be a fair price, depending on the complexity of the app.

Mockup of the app

Mockup is what your customers and investors will see. It can make them fall in love with your app or drive them away. In a nutshell, that is an approximate final look of your app.
There is a good rule for mockup estimation. Landing page will cost you around $500. And every additional screen will, usually, cost about $50–70. Count the number of screens you are going to have. Simply add everything to get the total price. That is the most common practice how companies and freelancers usually charge for their services.
But what about DIY? Of course, if you are familiar with such great tools like Adobe Photoshop and Adobe Experience Design it won’t be a problem for you to make a simple (or brilliant, depending on your skills) mockup. Those are the most common and handy tools. And while Photoshop will cost you $10-$20 (depending on the plan), Experience Design is completely free.

Interactive mockup

Speaking of simple mockups, there is a great way to improve those — interactivity.
Interactive mockup  — is a good chance for you to improve client engagement. Customers or investors would better prefer interactive solution over a static image. One more big plus — those are easy to spread over various devices.
Tools like Framer and inVision are your best helpers here. They work pretty much like usual app building platforms. Take your mockups, drag-and-drop different elements, adjust navigation and features, et voila! Now you have it.
Interactive mockups cost just a slightly more than the usual ones. You’ll just need your usual mockups and subscription for one of those tools. Or you can give this job to the designers you’ve hired. Anyway, additional expenses won’t exceed $100-$500. But potential profit may be a lot bigger.

Total price

Those blessed ones, who chose DIY way, might pay from complete nothing to a few hundred bucks (subscriptions, paid content, etc.).
And those who decide to hire somebody, might receive a bill on $1000-$10.000. Price varies drastically because of:
  • complexity of your app
  • desired features
  • region where you hire
One more good advice. Design agencies, usually, take fixed (and pretty high) price. Freelancers or outsource companies, on the other hand, often, charge on per hour basis. So hiring few freelancers in India for $10/hour might be a good idea for your wallet. But is it so when it comes to the quality?

Interested for our works and services?
Get more of our update !