Our blog

Page 6 of 8

  • What’s Your Web

    Author
    Souvik Das Gupta
    Published
    Event
    Meta Refresh 2015
    Location & Date
    ·Bangalore, India

    The beauty of the web is in its ubiquity. Its unparalleled reach isn’t a mere co-incidence — rather, a 26 year long journey of consciously embracing the principles of inclusiveness. The minimal hardware and software requirements have enabled most electronic devices today to connect to the web. At the forefront are mobiles which have surpassed their predecessors, laptops and desktops, quite emphatically.

    Today, user experience on a mobile device affects way more people than any other device. With several low cost smartphones out in the market the web has been brought within reach of lower sections of the socio-economic pyramid — many for the very first time. In fact, for a large portion of the population, inexpensive mobiles connected to the internet over flaky mobile data connections are their only window to the web.

    Mobiles are a hard problem — in many ways it’s like going back a few years in terms of device power and capabilities. Even though we – the web designers and developers – largely acknowledge that mobiles are omnipresent, the user experience challenge these devices pose is often conveniently reduced down to an afterthought. And as a result, the state of mobile browsing continues to be in a mess with endless examples of essential services like banks assuming that users have the privilege of accessing a desktop or a laptop over a fast and reliable connection.

    We have ensured that key services are available to you on the mobile website. For other services, please continue to desktop login. — m.icicibank.com

    At Meta Refresh 2015, I shared a peek into what constitutes today’s web eco-system. A check on the real world impact of poor mobile web experiences — something we perhaps underestimate. It’s a call out to the community to own up the unremarkable state of mobile web, make the right compromises going forward and refuse to budge even though it may sound unrealistic and drastic.

  • Web is Flux

    Author
    Souvik Das Gupta
    Published
    Event
    Meta Refresh 2014
    Location & Date
    ·Bangalore, India

    There are known knowns. These are things we know that we know. There are known unknowns. That is to say, there are things that we know we don’t know. But there are also unknown unknowns. There are things we don’t know we don’t know.

    — Donald Rumsfeld

    Earlier this year, in the month of February, I attended Meta Refresh in Bangalore where I emphasised the importance of progressive enhancement through a workshop and a talk at the conference. It is quite unfortunate that many web designers and developers continue to carry forth the old approach of designing websites for a known system configuration. Only later do they test their websites on alternate browsers / devices and patch issues that are detected. This practise is known as graceful degradation.

    This site is best viewed in IE6, 800×600.

    About a decade back there was very little variation in hardware and software and one could have got away with making assumptions about client systems – though that doesn’t really justify this practice even at that time. Over the years, the devices (and software) connected to the web have come a long way. New waves have swept across the ecosystem – frequently and unpredictably – bringing in newer hardware, device capabilities, screens, browsers and other software. Today it is hard to keep up with the speed at which things are changing. We don’t know what will storm the ecosystem next but something surely will. Assumptions about a system configuration, today, are far from safe.

    At a time when technology is changing faster than what we can keep up with, it’s worth noting that the fundamental principles of the web have remained unchanged since its inception about 25 years ago. These principles have stood the test of time and can perhaps be described as strictly liberal. In many ways they have been responsible for letting the web evolve and improve over time without any major impediments. Even today the very first website on the internet works flawlessly across all standards compliant web browsers on every device.

    The onus of embracing these principles lies on us. If we look closely, there are only a handful of knowns in a traditional web communication — the presence of a client and a server that talk over HTTP, and the fact that client is running a web browser that will understand a hypertext document. Everything else is either a known unknown or an unknown unknown.

    Progressive enhancement is a fundamentally opposite approach to the widely adopted method of graceful degradation. It was introduced in the year 2003, by Steve Champeon and Nick Finck in a talk titled Inclusive Web Design for the Future. In short, start with healthy markup, add the styles around it, and finally layer the interactivity around it. How does that help? The outer layers do not interfere with the inner ones, and therefore basic systems can access the content in the markup layer and deliver a base experience to the user. More powerful systems can further take advantage of the outer layers to enhance the user experience. No one’s excluded.

    The idea of starting with the most basic system was expectedly rebutted by many in the audience. After all, hardly anyone uses a vanilla HTML browser today. Pretty much everyone has the bells and whistles of CSS and JavaScript. But as the Principle of Least Power suggests, the less powerful a language the more widely it can be adopted. And further, if I may add, less powerful languages have low chances of failure. The fact that a system can continue working even if one of the technology fails is a huge benefit derived from adopting progressive enhancement. Christian Heilmann’s elevator vs escalator analogy perhaps best exposes the elephant in the room.

    Last year, all of a sudden, there was a revival of the progressive enhancement debate on the internet. Since then, it’s been regularly discussed at many reputed conferences around the world. Having to defend the values of the web (such as inclusiveness) 25 years after we began this journey by letting go of control, and becoming flexible is a tad disheartening. I wish the community rests this debate and upholds the spirit of the web. This talk is an effort to urge everyone to do just that.

  • Summer Camp

    Author
    Prateek Rungta
    Published

    We’re delighted to have two new people working with us over the summer.

    The first, Ayush Kumar Tiwari joins us as the web developer intern. Ayush has been dabbling with Python and Django while at college. More importantly, he plays the guitar and has brought it along to the office. Ayush had managed to stay sober at an engineering college for a full two years before finally succumbing to beer during his very first week at Miranj. This has led to some strange and funny side-effects, like showing up at work after guzzling 2 litres of milk in one go. We hope the effects are not permanent.

    Our second intern is the soft-spoken but sharp-eyed Kamal Nayan Sharma. He joins us as a web designer. Kamal has been blogging at TechToll for a few years and is also a budding photographer. He possesses a mean (in a good way) sense of humour that will catch you unaware and render you incapable of a response both because of the fits of laughter you roll in as well as the brilliance of the attack.

    It’s been great having new people in the team. More hands on deck, more people to help me pull Souvik’s (heavy) leg. Can’t wait to show you what we’ve been up to.

  • Passwords are Obsolete

    Author
    Prateek Rungta
    Published

    Justin Balthrop:

    Everybody knows that most passwords will remain unchanged. Yet our collective response to Heartbleed has been to patch our servers and email users asking them to do something we know most of them won’t do.

    Here’s what our response should have been:

    ALTER TABLE users DROP COLUMN password;

    Justin goes on to suggest one-time authentication codes delivered via email and SMS as the replacement. Regardless of what you think of the suggested solution, if Heartbleed get us to re-evaluate passwords and adopt a better authentication protocol on the web, it might just end up being a net win for us all.

  • Summer Internship

    Author
    Souvik Das Gupta
    Published

    Over the past 3 years we’ve collaborated with amazing people and worked on plenty of projects. But every now and then an interesting project idea strikes us and gets parked for later due to the obvious lack of time and manpower. However, this summer will be braved differently. We plan to kickstart a new project, and expect interesting things out of it.

    And since we’re setting up a ground for experiments, to learn and do, why not share it with others.

    So this summer (May-July), we hope to work with two interns — a web designer and a web developer. We’ll conspire, design, build, play, party and learn. But fun and learning isn’t where it ends. We promise a stipend (duh!) of ₹20k a month and a trek (read: adventure) to the mountains at the end of the project.

    Interested? We’d love to hear from you.

  • Preview: Embracing Progressive Enhancement

    Author
    Prateek Rungta
    Published

    We had a great time attending and speaking at Meta Refresh last year. Souvik has been given another opportunity and will be presenting once again at HasGeek’s annual web design conference. This year he is conducting a workshop that will revisit the spirit of the web to demonstrate what makes the web special, and show how to embrace the principle of progressive enhancement to build robust websites.

    Here’s a short introduction:

    If you design or build for the web, you should definitely try and attend. Come to the workshop and learn why and how to adopt this foundational philosophy of developing for the web, or participate in some of the other great workshops and talks on the roster. The most compelling reason to attend though is the chance to meet fellow peers in person — a rare privilege for us digital workers.

    Meta Refresh 2014 takes place from the 11th to 15th of February. Souvik’s workshop is on the 13th (Thursday) at The Energy And Research Institute (TERI) in Bangalore, and tickets are still on sale.

  • Let Your Designers Design

    Author
    Souvik Das Gupta
    Published

    No matter how selective a designer may be while taking up work, projects often fall victim to design interference by clients — knowingly or unknowingly. The web is full of posters, comics and anecdotes that share how the quality of work gets compromised when designers try to appease their clients. Under rare circumstances, if the issues under contention are non trivial, it could result in a failure of the project. Regardless, such projects end in a note of discontentment from both sides.

    We live in a world where design, designers and design services are largely misunderstood and yet a must-have. As long as this remains true, the occurrence of client intervention in design is inevitable.

    What follows is part rant and part discourse on why clients attempt to govern design.

    On design

    Design has been an integral part of various disciplines for a long time now. Yet even today, it is hard to define design. There are plenty of reasonable definitions and a recent paper proposing a formal definition, but there’s none that is definitive and accepted universally. Needless to say, this makes it hard to in turn define the job of a designer, and hard to recognise the value created by a designer.

    To make matters worse, the word design’ is commonly used to refer to appearance, which is imprecise even by its dictionary definition.

    Everything is designed

    It may be hard to nail the definition of design, but it would not be wrong to say that design is a prerequisite for the existence of any (man-made) product. Everything — be it the space around you, the chair you’re sitting on or even the dress that you’re wearing — has been designed at some point in time. Someone has taken a decision about how it’ll look, feel, taste, work etc. However, not every aspect is necessarily designed i.e. not every aspect gets the same amount of deliberation or conscious thought. Those aspects get left to chance, e.g. the taste of a chair.

    Everyone is a designer

    With reasonable intelligence and experience anyone can start taking design decisions. These decisions may be good, bad or terrible, but nevertheless, in some capacity, everyone can be called a designer. However, everyone is not adequately equipped (skill, time, tools etc.) to execute these decisions. In such a case these decisions are imposed on a skilled workman hired to simply to execute the decisions and bring the product to life e.g. designing a writing desk for yourself and hiring a carpenter to build it.

    Everyone is not a good designer

    Just because anyone can design doesn’t mean that everyone should — especially if the designer is himself not the only (or the primary) consumer of the design. Design decisions directly affect the consumers, and therefore these decisions should not be at the mercy of trends, personal whims or tastes of an individual. A good designer understands this and works with great amount of care, responsibility and humility. His trained tastes and rationale makes him competent to uphold the right principles, make the right compromises and take wise decisions.

    Everyone wants a designer”

    It is 2013 and the world has never been more design conscious”. Everyone — be it brands, communities, influential voices, and even consumers — is proactively talking about design. More and more people are getting exposed to good experiences, and behind every such experience there is design”, and in turn, a designer”. This notion has gone viral (perhaps for the better), but with a superficial understanding of a designer’s job. Consequently, looking for a designer” has become a norm, because without one a product is unlikely to succeed.

    Design happens one stage at a time

    Most design problems are complex, sizeable, and are solved by breaking them down into stages. Each stage demands specific expertise and introduces discrete roles. Design at every stage is constrained by the design decisions made in the previous stages.

    As an example, a restaurateur designs the business i.e. decides the goals, strategies, cuisine, target customers, rates, margins, etc. A chef designs the menu within the constraints of the business (cuisine, rates, target customers, etc.). The cutlery designer, in turn, is constrained by both the business and the menu.

    It is hard to identify when an unnecessary constraint is forced upon subsequent stages of design and to understand its impact on the end goal of serving the consumer.

    Irony in design services

    Design solves problems. But design as a service isn’t as straightforward as it sounds. Let me share two oddities:

    These two characteristics lead to disorder in an already difficult process. There are plenty of ideas, suggestions, opinions, principles, whims and demands battling against one another, looking to emerge victorious. And amidst the chaos, the sensitivity of the consumers takes a blow.

    If all we have are opinions, let’s go with mine

    Design starts by identifying constraints and setting goals. What follows is an exercise to churn out a solution that has the best odds of achieving the goals within the constraints. Throughout the process the designer deliberates with multiple stakeholders (including the client) and collects important insights that aid decision making. The final decision taken by the designer can often conflict with a client’s preferences.

    Are you not going to consider my personal tastes?”
    No.”
    But it is my product and I should be proud of showing it to people!”

    Unless the project goal calls for representing the client’s personal inclination (say, a personal website), a good designer rarely lets it trump factors like research, statistics and experience. In the absence of any conclusive reasoning, the final thing a designer counts upon are instincts. People usually mistake instincts for personal preferences, which is why designers often have to resort to bullshit. No, really.

    sudo make me a sandwich

    The clients have paid for the work, own the work and (justifiably) enjoy a veto over how the work gets used. If they disagree with the designer’s decisions, there is an obvious urge to enforce their own. The easier it is to make a modification, the higher the chances of the client making them. In the context of web design, rarely does a designer’s work remain pristine for long.

    Hiring a designer and not trusting his decisions is like taking an advisor on board and ignoring his advice. The designer, being a professional, moves on to the next problem on his plate, but carries a bitter feeling about the client and the final output.

    Discussing design services a while back, we were hardly surprised when a fellow designer (and friend) — one of the best around — replied the following to our question:

    How many clients who you’ve worked with in the past, would you be happy to work for again?”
    Can’t think of any.”


    Over the past two and a half years we’ve worked with a handful of clients — some we love and some we don’t. It took me a while to figure that the clients who we’ve loved working with are generally the ones who recognise and embrace the value that a designer brings to the team. This is not to say that all our favourite clients walked in with that knowledge, but they quickly discovered it and our relationship only got better over the course of the project.

    If you happen to hire a designer, present your problems instead of a solution. Do share your opinions, and especially your experience. A good designer will certainly take them into account and will be happy to explain his decisions. It’s only fair that you reason out the points of contention rather than forcing a viewpoint or your preferences. After all, you chose to hire a designer.

    Let your designers design.