Started with python and django! feeling awesome..!
I am very existed to be part of Awaaz.De family. At Awaaz.De, our technology stack is including GWT(Front End), django(python), Freeswitch and Lua(IVR).Â
We all know that web development is an exciting, creative act; at its worst, it can be a repetitive, frustrating nuisance. Django lets you focus on the fun stuff â the crux of your Web application â while easing the pain of the repetitive bits. In doing so, it provides high-level abstractions of common Web development patterns, shortcuts for frequent programming tasks, and clear conventions for how to solve problems. At the same time, Django tries to stay out of your way, letting you work outside the scope of the framework as needed.Â
Django is a web application framework and its having some of cool inbuilt features which leads to rapid development of web application. Its having awesome community and projects around the language and framework and this is the main reason why I like developing web applications with Python and Django. Every time I search for something thereâs always a Django or Python project available to make my life easier.
Its inbuilt feature list included, object relational mapper, automatic admin interface, caching and template system and elegant url management. Also there are many other python projects are available for django which makes your like much easier. It would a long list but I just want to higlight some of them only
1. South
South brings migrations to Django applications. Its main objectives are to provide a simple, stable and database-independent migration layer to prevent all the hassle schema changes over time bring to your Django applications.
2. Django Haystack
Haystack provides modular search for Django. It features a unified, familiar API that allows you to plug in different search backends (such as Solr, Whoosh, Xapian, etc.) without having to modify your code.
For our application we have used haystack to provide search functionality to our users. I'll post another blog post which would highlight more on it.
3. Django Celery
Provides Celery integration for Django; Using the Django ORM and cache backend for storing results, autodiscovery of task modules for applications listed in INSTALLED_APPS, and more.
4. Django Userena
Userena is a Django application that supplies your Django project with full account management. It's a fully customizable application that takes care of the signup, activation, messaging and more.Â
A simple js library which generates circular count down
Several days ago, I was checking some of js library over github and I found jQuery Knob. It's generates beutiful dials which are totaly canvas based. When I was checking it, I have got an idea to create a js library which generates nice and attractive circular count down. Today many websites templates are created with simple count down. So I thought may I can create a simple library which helps theme developer to develope this kind of count down very easily. The Circular CountDown is very simple to use and requires only one js function calls. You can provide input of target date(in year, month and date) and it will generate very nice dialets and will start count down. It's free of charge and you can use it with any modification. Take a look at example present in circular countdown(my lab).
In writing of a web application from scratch, it might be easy if we simply relying on DOM manipulation or some other library, but after some time we always get lost without proper structuring of our code in our application. Without having a real proper structuring in our code, we are always stuck with spaghetti code.
So it would be always advisable to use some kind of modern JavaScript frameworks that can assist us to bring a real structuring and organize our code in well manner which would be resulting in improvement of maintenance. Well in terms of structuring, a MVC architecture is the best choice. There are couple of modern frameworks presents now a days like Backbone.js, ember.js, angular.js, knockout.js, etc which can provide a solid structuring to our application. Though each of them having some of pros and cons and also are having different purpose usability, you can always choose the best one as per your needs.
So What Is MVC ?
All of these modern frameworks provide us an easy way to organizing our code using variations of a pattern known as MVC (Model-View-Controller). MVC separates the concerns in an application down into three parts:
Models represent the domain-specific knowledge and data in an application. Think of this as being a âtypeâ of data you can model â like a User, Photo or Note. Models should notify anyone observing them about their current state (e.g Views).
Views are typically considered the User-interface in an application (e.g your markup and templates), but donât have to be. They should know about the existence of Models in order to observe them, but donât directly communicate with them.
Controllers handle the input (e.g clicks, user actions) in an application and Views can be considered as handling the output. When a Controller updates the state of a model (such as editing the caption on a Photo), it doesnât directly tell the View. This is what the observing nature of the View and Model relationship is for.
Why do we need Code Structuring ?
ARE YOU WEB DEVELOPER ? THEN YOU SHOULD BE KIDDING TO READ THIS SECTION. BECAUSE YOU MUST KNOW THIS MAN!
But anyway if you newbie then probably this brief description might help you.
Creating responsive, fluid, and maintainable interfaces for web apps isnât as easy as one would imagine â there is data to be sent back to the server and the results parsed, data stores to be updated, views to be re-rendered and so much else that needs to be done in the background. There might be easy for desktop application developers with robust tools and well defined workflows. But for web developers, it's not easy. And importantly, the complexity of web application â specially on the front end always needs a proper structuring with other features. If we don't have any structuring or framework, I believe either we couldn't survive very long with our application development or needs to write and maintain thousands of lines of code.
Let's get familiar with these MVC frameworks..
As mentioned above, there are so many frameworks present that it can often be difficult to choose which best suits your needs. Picking the right JavaScript framework for your needs can be tricky. So in this articles I would described top 10 framework along with it's comparison with the hope that it might help you.
The comparison of these framework are done on basis of four major features that each of them is addressed. They are UI Bindings, Composed Views, Web Presentation Layer and how it plays nice with other.
Well, currently I am building a web application. I am using a backbone.js because it is ideal for applications with a small number of states where the view hierarchy remains relatively flat and where the user tends to access the app infrequently or for shorter periods of time. Backbone's code gets to remain short and sweet because it makes the assumption that the data backing the DOM will get thrown away and both items will be memory collected: https://github.com/documentcloud/backbone/issues/231#issuecomment-4452400. Backbone's smaller size also makes it better suited to brief interactions.
You can share your views on framework that you have found most suitable for your application.
Today I am reading some articles about designing. I really realized how the design can affect the whole damn thing. In general terms people always think of design as either logo or theme or innovative UI. But actually it is a lot more than that. Itâs how youâre going to kick your competitorâs ass. So let's try to understand design.
What is Design ?
In very basic meaning, a design is a method of problem solving. The Design is so many things, executed in many different ways, but the function is always the same. Whether itâs blueprints, a clever UI, a brochure, or a chair â design can help solve a visual or physical problem.
A Good Design :
Well the best designs are notorious for seeming not designed at all â or âundesignedâ. If you know what to look for, itâs easier to identify good design when you see it; or perhaps when you canât see it at all. It can not be
possible to measure the design in a finite way. i.e. how your design is good. But there are some principles given by a German industrial designer Dieter Rams, for what he considered was good design. Some of them are described below.
Innovative : As described in my earlier post, there is difference between 'Innovation' and 'Invention'. Well we all know that the innovation possibilities are not exhausted in meaning. The innovative design is always relay on technological development. But again the innovative design always develop in tandem with innovative technology.
Usefulness : Good design is always emphasizes the usefulness of a product whilst disregarding anything that could possibly detract from it.
Aesthetic : Adjectivally the meaning of aesthetic is pertaining to, involving, or concerned with pure emotion and sensation as opposed to pure intellectuality. The aesthetic quality of a product is integral to its usefulness because products we use every day affect our person and our well-being. But only well-executed objects can be beautiful.
Understandability : Making product more understandable clarifies the productâs structure. Better still, it can make the product talk. At best, it is self-explanatory.
Long-lasting : It avoids being fashionable and therefore never appears antiquated. Unlike fashionable design, it lasts many years even in todayâs throwaway society.
Littleness : Less, but better â because it concentrates on the essential aspects, and the products are not burdened with non-essentials.Back to purity, back to simplicity.
"Good design canât be achieved with glossy buttons or masterful wire frames alone. Itâs a merger of all these principles into something that is meaningful and deliberate. Just like a great business plan is nothing without expert execution, a great Photoshop mockup is nothing, for example, without careful consideration to UI or the userâs needs."
There are various types of design. The graphical design is involving Print Design.
While Interaction design is heavily focused on satisfying the needs and desires of the people who will use the product. And the Industrial design is most concerned with the physical products which is designated for millions of people. The best example of it is i-Pod.
How important is product design?
It always concerned with physical as well as digital product design. It represents not only the aesthetic qualities, but what it does, how well a user thinks it's going to do it, and how easily & quickly they can complete a task.
It's being so while that i am posting something. I am just thinking about 'ideas'. The idea in simple meaning
Something, such as a thought or conception, that potentially or actually exists in the mind as a product of mental activity.
Plato was one of the earliest philosophers to provide a detailed discussion of ideas. He considered the concept of idea in the realm of metaphysics and its implications for epistemology. He asserted that there is a realm of Forms or Ideas, which exist independently of anyone who may have thought of these ideas. Material things are then imperfect and transient reflections or instantiations of the perfect and unchanging ideas. From this it follows that these Ideas are the principal reality (see also idealism). In contrast to the individual objects of sense experience, which undergo constant change and flux, Plato held that ideas are perfect, eternal, and immutable. Consequently, Plato considered that knowledge of material things is not really knowledge; real knowledge can only be had of unchanging ideas. - Wiki Pedia.
The discussion is not around what is idea or who says what about idea. But i want to just discuss about how an idea can change the whole thing. Today technology change the whole things. Everyday a new fresh technology is emerging. Today the world is become 'innovative' and 'inventive'. There are two main terms which are very deeply associated with 'Idea'. They are 'Innovation' and 'Invention'. Most of us think they both are same. But actually both are little bit different. To differentiate the 'Innovation' and 'Invention', we can consider the example of 'Steave Jobs' and 'Dennis Ritchie'. Both had given something that the world never forgets. Dennis Ritchie had invented a very powerful languages called 'C'. Today around 90% of computing world are built on 'C' language. Besides 'Steave Job' also had innovated the "i". Both died in the same month but the world only had remembered Steave Jobs. No one remembered Dennis. Again Steave earned so much money for the devices he innovated. While Dennis never earned that much money which he really deserved.
In general terms both the 'Innovation' and 'Invention' means find something new or converting ideas that world never see before. But if you get(other than just personal satisfaction) something real that you really deserve (today monetary benefits)than that thing become real 'Innovation' otherwise its called as 'Invention' only.
There are some ideas which can change your world in the 2012. They are described as following :
Online business/make money online :
Despite the potentially disruptive Stop Online Piracy Act law issues on online businesses, my all-time favourite small business idea, online business, will continue to thrive. Web-based businessâ role has increased steadily over the years, revenue-wise and potential-wise. As cloud computing will become mainstream (or itâs already mainstream?) and plenty of web tools to help you build a web business easily, online revenues are more accessible to non-tech webpreneurs.
Social media specialists
Despite social media campaignâs ROI is still trivial to figure out, social media continues to be important vehicles for enhancing business branding, engaging prospects/customers and increasing business profits. That being said, businesses need someone who is social media savvy. Offering various social media-related services â managing clientsâ social media profiles, etc. â establishing social media consulting business hiring social media savvy people will be a great, lucrative business.
Remote/cloud working services
Remote working or cloud working will even be more prominent in 2012. As companies are (finallly) acknowledging the benefits of remote working, ranging from reducing office expenses to enhancing employee morale, cloud workers (who work remotely by utilising cloud services) â and any other variations â need any helps possible to support them; establishing cloud working services business and offering various services to cloud workers â including services to plug their business/work to the cloud â proves to be a lucrative business.
Crowdsourcing/crowdfunding services
Crowdsourcing and crowdfunding continue to be great ways to get projects done or launched quickly. Crowdsourcing lets businesses to source for great ideas, while crowdfunding lets budding entrepreneurs not to worry (too much) on project funding; they can focus on developing products/services. Starting a crowdfunding/crowdsourcing business to faciliate project owners to get things done/funded by allowing people to take part by offering their money and/or talent will present you with great chances of success.
Personalised products
Custom-made products will always attract creative customers. Ranging from design-your-own jewelries to make-your-own wines, starting a business offering not only customised products to total customer experience will always be lucrative.
Reputation management
With the ever-available Internet, managing your reputation â especially online â is challenging. A ânot so professionalâ photo tagged on Facebook can ruin your business reputation. Getting tagged as a scammer by unhappy customers or âcreativeâ competitors and be found online via search engines can ruin your business. Offering reputation management service can give you unlimited stream of customers.
Business continuity services
Business continuity is a big issue in the past few years â with all the natural disasters (earthquakes, snow storms, etc.) and people movements (such as Occupy Wall Street) â businesses need to do strategic planning in ensuring their business continuity â or seek help from others to help them in their disaster planning, to the least. Establishing a business that take care of the whole process for companies is highly lucrative.
Green and sustainable business
Green business rocks. Period. Establishing a company offering tools to generate green energies right from your home, constructing green buildings, renovating premises for less energy consumptions, building gadgets from recycled material, etc. â the possibilities are limitless. Go green, be profitable.
Business technology Intermediaries
Technology advances rapidly, and keeping up with such advances troubles businesses. Cloud computing is said to be beneficial for businesses; but integrating cloud computing solutions to existing IT infrastructure without proper help from a cloud consultant to overseer the integration process, things could backfire.
Copywriting
For websites, content is always important. But with the latest development in search engine arenas, such as Google Panda update that slams both low-quality sites and big user-contributed sites (i.e. eHow.com,) quality content is even more important today. Thereâs no sign of slowing down; demand for quality content will grow even more significantly in 2012 â a big opportunity for both talented freelance copywriters and copywriting companies to grab.
Among each of these ideas, the best one and my all time favorite idea is Crowd-sourcing services.e.g. Facebook, twitter, etc.
As discussed above, one idea can change the whole thing for you as well as your world. So let's start thinking....