Why use respective interfaces instead of concrete classes?
What does it mean to "program to an interface"?
Why do we need to set swap space as twice big as our physical memory? When we want to setup a linux system, there is a common a suggestion to set the swap space  twice as big as your physical memory. I want to know why do we need this, and how it is this suggestion come to be? Add an Image Upload button to the Mobile Site With the release of iOS 6, the most commonly used mobile browser now supports standard generic image upload buttons. This is actually really handy.  I can take screenshots on my phone or iPad, and use them to answer questions about apps made to run on those devices (or ) to answer questions. Until the release of iOS 6 however, the only way to use these images in my answer was to either sync them over to my computer, and then answer from a desktop, or use a specialized app to upload the images, such as PicUp or DropBox, and then manually write out the markdown code.  After iOS 6, the Image Upload button works just fine, if I switch to viewing the full site from my iDevice, rather than the mobile view. I can upload images directly, and the markdown is handled for me. It's awesome, except for the fact that the non-mobile site is decidedly non-awesome on the small screen of my phone.  Which brings me to my feature request: Add the Image Upload button (and other markdown shortcuts, as deemed worthwhile) to the ask/answer editors on the mobile version of SE sites. A question about the equivalence relation on the localization of a ring. How I can automatically add a page if the total number of pages is odd? I need automatically add a blank page (also without document header, numbering and footer) at the end of the document, if the total numbers of pages is odd. How I can do that? And preferably without using any additional package. :) Why is this power adapter transformerless? For subspaces, if $N\subseteq M_1\cup\cdots\cup M_k$, then $N\subseteq M_i$ for some $i$? I have a vector space $V$ over a field of characteristic $0$. If $M_1,\dots,M_k$ are proper subspaces of $V$, and $N$ is a subspace of $V$ such that $N\subseteq M_1\cup\cdots\cup M_k$, how can you tell $N\subseteq M_i$ for some $i$?  I was first trying to show it just in the case $N\subseteq M_1\cup M_2$, and hoping to extend it to finitely many $M_i$. If either of the $M_i$ contains the other, the claim follows, so I suppose neither $M_i$ contains the other.   In hopes of a contradiction, I suppose $N\not\subseteq M_1$ and $N\not\subseteq M_2$, Picking $x_1\in N\setminus M_1$ and $x_2\in N\setminus M_2$, I'd have $x_1+x_2\in N\subseteq M_1\cup M_2$. The only thing I could conclude was that actually $x_1,x_2\notin M_1$ and $x_1,x_2\notin M_2$, which seems like a dead end. What's the right way to do this? When new users edit a post, the review is posted to a review queue and other reputable users can review the edit and choose to approve or reject it. However, I feel that a lot of people do it pretty quickly.    to . He was fixing broken links in the answer, and as soon as I saw it I knew it would have been a good edit. However, only one reviewer found so, and three others rejected it. I ended up manually doing the edit, and poor Onato didn't get any credit for it (in fact, he got an undeserved 'rejected' for it).  The point I want to bring is that, first and foremost, the person who wrote the answer probably knows best if an edit is acceptable or not. Could there be a time frame where the author of the answer (or question) can overturn a review decision?    EDIT: one more  was rejected by overeager reviewers as well. I absolutely disagree with the notion that the community knows better. The community repeatedly proves that it only wants Internet points.    EDIT: I told a commenter to fix something himself in one of my posts, but . I went back and applied the changes myself. It's not credited to him and his stats got a rejected edit now (which really should be an approved edit). The reason ("This edit is incorrect or an attempt to reply to or comment on the existing post") is blatantly wrong and shows once more that the community has much less insight into edit quality than the people who wrote the answers in the first place. It's true that the UI didn't make it easy for them, but those guys clearly didn't read the comment thread; I did, because as the author, I was notified.    EDIT: This time around, a user fixed a blatant (though small) mistake in one of my accepted answers. One hour later, another, unrelated 10k user , even though it had been approved by the community. I went back to undo his undo.  This goes on again to show that an active user is the best judge for the quality of an edit, and that since I can have the last word on edits on my own posts, I should be allowed to retroactively overturn a community edit vote and accordingly credit the person who proposed the change.    EDIT I wrote a  years ago. Some guy found it and tried to fix it but the community thought that it wasn't worth it. I think that the changes are great and once more I'll integrate them by myself into my post. Unfortunately for this user, he won't be credited for it. I still don't understand why I can't have a binding vote on edits on my posts. Teams of users rails app If $a > b$, is $a^2 > b^2$? Given $a &gt; b$, where $a,b ∈ ℝ$, is it always true that $a^2 &gt; b^2$? Software for Calendar Designing Which is the best software of making a calendar. Coreldraw or Illustrator? What is the standard size of calendar? And is there any inbuilt format or template fro making calendar in both Corel or Illustrator? Also, even though Photoshop is a rasterised software but still wanted to ask can it be designed in Photoshop also? When is $\phi(n)$ a prime number? I was thinking about this problem today. If $p$ divides $n$, then $p-1$ must divide $\phi(n)$. But $p-1$ is even for all primes greater than $2$, so must $\phi(n) = 2$ - the only even prime? I feel like this argument is shaky and not very rigorous! I need scale up video from one DOS game using . But with  on left side and  filter on the other one.  Input (320x200)    Output (1280x800)    Here is a command, where's xBR processing whole screen...  ffmpeg     -i input.avi     -sws_flags neighbor     -vcodec libx264 -strict -2     -preset veryslow -qp 0     -filter:v "xbr=4"     output.mp4 I read here at  that holding Shift during boot can bring up the GRUB menu. However I try holding one or the other Shift keys, tapping, tapping then holding, nothing works. Am I missing something? How does one access the GRUB menu during boot time?   No dual boot here, just standard Lubuntu 14.04 install. If I have a native C++ windows program (i.e. the entry point is WinMain) how do I view output from console functions like std::cout? Which wire is negative on this PC fan? I just got this PC fan and it has a 3 pin connector, I know the wire with the white stripe is positive but how can I find out which of the other two wires are negative?  If you can't see the photo, here is a link to it: Is $7$ the only prime followed by a cube? Undefined Symbol ___gxx_personality_v0 on link I'm trying to run a gunicorn_django process in supervisor but it always exits immediately, giving this error:   INFO exited: my_app (exit status 1; not expected) INFO received SIGCLD indicating a child quit INFO gave up: my_app entered FATAL state, too many start retries too quickly   My server script looks like this:  #!/bin/bash set -e LOGFILE=/var/log/gunicorn/my_app.log LOGDIR=$(dirname $LOGFILE) NUM_WORKERS=3 USER=my-www-user GROUP=my-www-user cd /home/my-www-user/my_app source /home/my-www-user/.virtualenvs/my_app/bin/activate test -d $LOGDIR || mkdir -p $LOGDIR gunicorn_django -w $NUM_WORKERS --debug \  --user=$USER --group=$GROUP \  --log-level=debug --log-file=$LOGFILE 2&gt;&gt;$LOGFILE\  --pythonpath=my_app --settings=settings.active \  my_app.wsgi:application   And my supervisor config looks like this:  [program:my_app] directory=/home/my-www-user/my_app/ user=my-www-user command=/home/my-www-user/my_app/server.sh stdout_logfile=/var/log/supervisor/my_app.log stderr_logfile=/var/log/supervisor/my_app-error.log autostart=true autorestart=true   When I su into the my-www-user account the server starts normally. When I do sudo supervisorctl start my_app it simply hangs until I do CTRL-c, then I find the error above in the supervisord.log file.  Does anyone have a clue about what I am missing? PostGIS nearest points with ST_Distance, kNN I need to obtain on each element on one table the closest point of another table. The first table contains traffic signs and the second one the Entrance Halls of the town. The thing is that I can't use ST_ClosestPoint function and I have to use ST_Distance function and get the min(ST_distance) record but I am quite stuck building the query.  CREATE TABLE traffic_signs (   id numeric(8,0) ),   "GEOMETRY" geometry,   CONSTRAINT traffic_signs_pkey PRIMARY KEY (id),   CONSTRAINT traffic_signs_id_key UNIQUE (id) ) WITH (   OIDS=TRUE );  CREATE TABLE entrance_halls (   id numeric(8,0) ),   "GEOMETRY" geometry,   CONSTRAINT entrance_halls_pkey PRIMARY KEY (id),   CONSTRAINT entrance_halls_id_key UNIQUE (id) ) WITH (   OIDS=TRUE );   I need to obtain the id of the closest entrnce_hall of every traffic_sign.  My query so far:  SELECT senal.id,port.id,ST_Distance(port."GEOMETRY",senal."GEOMETRY")  as dist     FROM traffic_signs As senal, entrance_halls As port        ORDER BY senal.id,port.id,ST_Distance(port."GEOMETRY",senal."GEOMETRY")   With this I am getting the distance from every traffic_sign to every entrance_hall. But how can I get only the minimun distance?  Regards, What is the benefit/downside to using a switch statement vs. an if/else in C#.  I can't imagine there being that big of a difference, other than maybe the look of your code. Is there any reason why the resulting IL or associated runtime performance would be radically different? Related: