This is to be expected. New doesn't cater to what holds the interest of the current user base so you get the things most existing users didn't bother upvoting. Basically New is unfiltered through the status quo of "HN appropriateness" even though that's been changing since the time the forum came online.
I'm here because it's like an abusive relationship. You think that this time will be different and sometimes you get a sense that you might be right but then you get disappointed every time and realize that things will never be as good as they used to be. Please don't reply with a Wikipedia link to "Whoever's Law" because that would make the abuse worse. The only thing even worse than that would be a link to yourlogicalfallacyis.com.
IMO after using iOS 7 on the iPhone and iPad I can say it's OK but it's nothing great though .. a few of their new APIs are cool too I guess -- honestly I was expecting more and better from apple considering how much they have running on the iOS game
I would be fascinated to read your rationale for just using Django. Specifically I'm curious what use-cases you see as Django having an advantage in? (Specific examples make for a much more interesting dialogue.) In relation to this, do you think there are contrasting use-cases where Flask might excel as a more suitable option? Personally, I do not favor Flask or Django or <insert web application suite here> exclusively; instead I evaluate a use-case and then determine which tool best fits my needs. However, it would be amazing if you could somehow show that "just use django" is axiomatic to web development in Python...
Indeed, I'd be curious as well to hear about why someone should use Django. I initially started using Flask because it is the lightest framework I could find in terms of dependencies, boilerplate, and mental-modeling. Additionally, it had EXCELLENT documentation for everything, from the super newbie (me) to the more seasoned expert.
Since then I've yet to run into a case where I want a lot more than what Flask offers. However, If there's something better that I just don't know about, I'd love to hear about it!
I've used both Flask and Django more or less extensively: generally I like to start out in Flask and move to Django if necessary, as opposed to the other way around.
The three big things I think Django has over Flask:
- ORM
- Django-admin
- A stronger ecosystem
(But of course, none of these are entirely absent from Flask -- its not as if its particularly difficult to plug in SQLAlchemy, and I believe there's a Flask-admin package nowadays.)
My general advice is that if you feel like the thing you're developing is going to turn into a CRUD app, use Django.
I don't think the ORM concern is valid - SQLAlchemy is probably the best ORM available for python and you can drop it straight in to your flask app.
As you say, it really depends on your use-case. I wrote a number of crud apps in Django in a previous life (when Django was still fairly young). I found that out of the box you could get something set up quickly but trying to bend it to your (or the clients) will sometimes required a lot of work. I remember at one point having to duplicate a huge chunk of code into one of my models. That's the tradeoff you'll always run into. You'll get a really complete system for free but it won't be as flexible as you may one day need it to be.
I believe Flask actually has the advantage in the ORM since you aren't tied to Django's strictly RDBMS structure and Flask will allow you to easily use NoSQL solutions if that's your thing. Flask with SQLAlchemy is just as powerful as Django's ORM.
Flask does have an admin plugin but it's nowhere near as good, polished, or documented as Django's.
Django does have the advantage of a bigger mind share, users and ecosystems.
> Flask with SQLAlchemy is just as powerful as Django's ORM.
sqlalchemy is more powerful than django orm.
> I believe Flask actually has the advantage in the ORM since you aren't tied to Django's strictly RDBMS structure and Flask will allow you to easily use NoSQL solutions if that's your thing
easy there. you can as well use nosql with django (orm is useless then, by definition) and you are in the same exact situation as using nosql engines with flask. if you get rid of the orm in django (which is doable), you are just bringing your own batteries here, just as you are bringing them to flask.
Use Django when you're an agency making a finite delivery to a client. :)
Edit: on a serious note, use it when all the dependencies it comes with matches what you exactly need. Once you're down the path of swapping something out, all the third-party apps/packages (one of the key features) become useless. This becomes problematic when you start to use something like MongoDB and end up having to write a lot of code on your own.
Django is a great framework, but it has always struck me as Python's answer to Ruby-on-Rails. Very structured.
Flask is literally a 5-minute ad hoc content management system with all the power to take on massive tasks. The "micro-framework" label is an understatement.
I also think Armin's style is quite elegant and I've learned a lot more about the language just from reading Flask source.
How is Flask a "content management system"? I thought it was a fairly small set of utilities for writing web applications, aka a microframework. A CMS is a program/app for publishing and editing web pages or blogs, is it not?
Flask is a framework for writing applications. You can build whatever. I've used it for blog engines, geospatial models, and much more. A CMS is exactly as you say: a system for managing content.
Switching to Flask from Django was like switching to Slackware from Mandrake (back in the day...). For the first time I was actually learning the system I was using.
Somewhat related but I've been canceling my subscriptions (Office365 in my case) to services I can't properly secure..
I'm also in the process of selling my surface pro and going back to a Linux laptop (OneNote 2013 sucks with touch on the Desktop for me .. and Microsoft's Windows8 version won't allow you to not use Skydrive)
Also, I pay Microsoft .. why won't they let me save my OneNote docs in a secure way using their Windows8 apps?
what are the implications .. you can't have a conversation with someone without thinking that your thoughts and opinions right now won't be tied and assigned to you forever ..
Imagine a highschool student who liked some band or political movement on facebook or talked about it on skype that is somehow tied to a imbalanced person who shot up a school or committed a crime? how could this effect his applications to state universities or grants or whatever? who knows...
do you trust the goverment that feels the need to spy on everyone behind their back to make a decent decision?
I've been keeping all of my work notes/journals/thoughts in OneNote which is synced and stored on Microsoft's servers ... who has access to those?
I don't want the bureaucracy to use my private thoughts, my private information or my private feelings to make decisions about me for whatever reason .. what happened to having rights and liberty?
tl;dr the implications are that you don't have the freedom to be yourself as long as this is going on
Out of genuine curiosity, what touchscreen device would you say then was actually the first one that mattered?
I assume by "mattered" Gruber meant mass market popularity, which IMO was mostly because Apple did get many things right in their touchscreen. (I owned a bunch of touchscreen devices before my first iPhone and they all sucked from a user experience perspective - missed taps, sluggish response, lack of multitouch, requirement for a special stylus etc).
I'd say that Palm manufactured a large number of "touchscreen devices that mattered" years before the iPhone. Just because it wasn't high-resolution and capacitive doesn't change the fact that for a long while, Palm Pilots were a staple of business.
Ah, fair point. The Palm didn't come to my mind because I didn't buy one - I personally felt that the device & the stylus-based interface were too clunky - but you're right, it was still a touchscreen device that mattered.
I'm a fan of the statement made at the end of this article .. which to me boils down to that
A mobile web presence is very important and shouldn't be ignored but if you're going to distribute something as a native app it's silly to build it entirely in a WebView
also it's wise to never forget that technology changes so fast neither of these current platforms will be the same in 2-3 years .. so really just pick something and go