Second, it offloads any trivial formatting to the client’s browser and save you precious server resources.
Lastly, it moves formatting to the view layer where it rightfully belongs.
Important, non-urgent tasks are the usual victim of my procrastination. For so long, there’s this one item that I’ve been dreading to do: updating our company profile. Every time I check my daily to-dos, it would sit right on top — highlighted in red — staring, begging at me to cross her off my list. I would coyly pretend that I don’t see it and skip right to the next item. On some days, I would stare at it, try to summon strength to actually do it then back down at the last minute.
This goes on for a while: 233 days to be exact. Then last week, a client asked for our portfolio. I pulled out our portfolio and prepare to send it. Then it hit me: all of the portfolios listed are dated and now irrelevant. I was trapped, it was the point of no return. I have to do it now.
Few hours and 3 cups of coffee later, I was happy to cross it off my list. Sometimes push is not enough. Sometimes you need to be trapped that the only way of getting out is to deal with it.
MG Siegler agreeing with this New York Times article:
Just in time for the Labor Day holiday in the United States, Clive Thompson dives into the thing that will ruin the holiday for so many:
Why would less email mean better productivity? Because, as Ms. Deal found in her research, endless email is an enabler. It often masks terrible management practices.
When employees shoot out a fusillade of miniature questions via email, or “cc” every team member about each niggling little decision, it’s because they don’t feel confident to make a decision on their own. Often, Ms. Deal found, they’re worried about getting in trouble or downsized if they mess up.
This seems exactly right. I’d venture to guess that most email that is sent in the work environment doesn’t need to be sent. But it is as a way to cover one’s own ass.
In my experience, this goes beyond email. This happens on a daily basis and in all form of office communications (IMs, meetings, etc.). Some employees have a bad habit of including everyone or someone who has authority on the loop to sidestep blame or to at least “reduce” the blame on them. They think they are off the hook by asking someone’s approval before making the decision. By doing so, they can say, “hey, didn’t I asked you about this?”
OAuthException: Error validating access token: The session has been invalidated because the user changed their password or Facebook has changed the session for security reasons.
I just received our Fractures today. Fractures are photos beautifully printed directly on glass. I discovered it after listening to The Talk Show and ATP podcasts where Fracture is regular sponsor. The hosts are very generous when praising the product so I was intrigued. I checked them out but hesitated because it’s not cheap specially when shipping them internationally. However, if you’re a listener of the shows, they give a 20% discount code which is a pretty sweet deal.
Anyway, long story short, two weeks ago, I finally caved in and ordered two. I was really stoked when I got them. The frames are well-made and the pictures look vibrant. The borderless glass frame looks nice and elegant. It allows the pictures to easily blend in with our apartment. I did a semi-official unboxing (and hanging) of the frames:
If you want to know more about Fracture, here’s their promotional video:
I was reading Scott Hanselman‘s blog about running background tasks in ASP.NET and I was surprise to discover Hangfire! My go-to solution for background tasks in ASP.NET is either console app — straightforward to implement but requires a lot of work — or Windows Scheduler — often kludgy and crash-prone. This is such a relief for me (emphasis mine):
The best feature from Hangfire is its built in /hangfire dashboard that shows you all your scheduled, processing, succeeded and failed jobs. It’s really a nice polished addition.
This drastically reduces, if not eliminates, the need to remote the server just to the check whether a background task has crashed or not; my top pet peeve when implementing background task solution. Had I known Hangfire a few months back, it would’ve saved us a few days of work. Nevertheless, I’m sure it will be a mainstay in my .NET kit.
John Gruber speculating the next iPhone screens:
But after giving it much thought, and a lot of tinkering in a spreadsheet, here is what I think Apple is going to do:
- 4.7-inch display: 1334 × 750, 326 PPI @2x
- 5.5-inch display: 2208 × 1242, 461 PPI @3x
@2x means the same “double” retina resolution that we’ve seen on all iOS devices with retina displays to date, where each virtual point in the user interface is represented by two physical pixels on the display in each dimension, horizontally and vertical. @3x means a new “triple” retina resolution, where each user interface point is represented by three display pixels. A single @2x point is a 2 × 2 square of 4 pixels; an @3x point is a 3 × 3 square of 9 pixels.
It’s lengthy but if you geek out on this kind of thing, it’s worth the read.
Growing Android fragmentation — or device diversity if you prefer — has been visualized in a new report by crowdsourced cell phone signal startup OpenSignal, which has surveyed 682,000 devices to build its annual peek at Google’s mobile OS ecosystem.
I don’t know how Android apologists will spin this but if you don’t call this fragmentation, I don’t know what is.
Last week, The Verge had a controversial article about Slack:
Are people using Slack to replace workplace email wholesale?
Yes, for a lot of three-person teams, a lot of 10-persons teams, and a lot of 100-person teams. It’s all or nothing. If half of your team was not on it, then the whole team would stop using it pretty soon.
We’ve been using Slack since February this year (yes, really). Initially, I thought it was just another app in the crowded messaging space. Nonetheless, I was impressed by its UI so I gave it a shot. I asked my team to sign up and try it out. Our usage eventually dwindled because we are using Skype as our primary communication tool. Slack as a communication platform just cannot compete with Skype.
This goes on for a while until I discovered Slack’s true power: third-party integrations. Because of our recently-implemented code review process, I wanted to be notified whenever a developer commits a code. Incidentally, this is right up Slack’s alley. Slack has an impressive roster of third-party integration, including Bitbucket. For every repo that I want to be notified, I simply create a hook and pair it with a Slack channel. Viola! Instant commit reminder. Here’s another cool usage scenario that we recently adapted: we wanted to be notified whenever a file is dropped in a certain OneDrive folder. This is part of our internal backup process. Using a third-party app called Zapier, we were able to bridge Slack with OneDrive, which is pretty sweet.
Overall, Slack didn’t kill email in our office. At least not yet. In spite of that, we’re a happy camper. We are now obsessing on how we can integrate it further with our internal processes.
Then I found moment.js. You’re welcome.