I have a bash code export TM_SCALAC=${TM_SCALAC:-scalac}.  I'm not sure the meaning of ":-" inside the ${}. How do I interpret this line of bash code?
I saw this in the end of an awesome shell script but I can't understand the login here because I think it's being short-handed for a longer command.  spark ${@:-`cat`}   This apears at the end of . Any ideas?  + Marks for some one who extends it into a full segment of code, even if its slower (Better for explanation)
This might seem a stupid question but why do Ethernet cables have 8 wires? Cat5 cables were just using 4 of the 8 wires, so only 4 are actualy 'needed'. Why not 12 or 16 wires? Just that. By good I mean something at the level of SolidWorks, AutoCAD, or similar. This is a complete limitation for me (and many others) to use Ubuntu. How to interpret output from Linux 'top' command? What is the difference between an "API," a "framework," an "IDE," and an "engine?" I am just starting out trying to learn to develop games. At first I thought C++ and OpenGL were the tools a beginner would start out to make a game, but quickly found out the OpenGL was just a API for graphics. Then I thought C++ and SFML were what I needed to learn to make a game, but found out the SFML was a media framework that could be used to make games but wasn't a game engine.  I don't want to use a software that does all the work for me, I want to code my own game, the way a game programmer would. I don't understand the difference between a IDE, framework, API, and a engine; What separates them from each other? Do some game programmers use the SFML framework, while other programmers use a game engine? When I post an answer to a brand new question I usually find that someone else has submitted that same answer just moments before. (, usually ;-) )  What I've started to do lately is (I think) the right thing.   If I notice that another answer predates mine, and that I add no value over it, I immediately delete my own answer, and upvote the other guy.  I recommend that you too do the same. Otherwise the message will be diluted.  Similarly, if after posting your "answer" you realise that you are in fact wrong (and you've just misread the question) -- you can actually delete your answer.  Is this reasonable?  (The reason why I'm writing this down is because it feels completely counter-intuitive to delete your own stuff. But it really saves everyone time and effort) The method signature of a Java main() method is:  public static void main(String[] args){     ... }   Is there a reason for this method to be static? What does "had had" mean? How does this differ from "had"? For example, what is the difference between the following two sentences:     I had a bad day      I had had a bad day Is there any rule for when it is better to use genitive case or noun as adjective? I'm not sure if there is any difference in meaning in this example:     The department of accounting       The accounting department   Can I also use both forms in situations like:     The restaurants of Paris / The Paris restaurants      The room window / The window of the room Low output volume SEO for websites with very less content and a lot of images Let's say we have an image exhibition website that has got a lot of images but next to nothing content. The focus keyword for this website is "Artistic wallpapers". What would be the best approach w.r.t SEO for such a website.  Here are a few things I can imagine:   Submitting sitemaps ( image and web ) Having a good pagespeed score. Nice navigation Breadcrumbs sharing the website content on Social media. Having appropriate titles.   Having worked on all these things, what can be done if Search engines are picking wrong keywords ( For example views, votes, ratings) Can anything be done so that Search engines don't track these specific items? Also, is it a good practice to have all the pages submitted to Search engines at once? Im not familiar with Ubuntu or Linux in general but have succesfully installed dual-boot windows7/Ubuntu on a single harddisk on my private PC. I used the "Install Ubuntu alongside them"-option.   On my work PC I have an existing windows 7 64-bit installation that boots from BIOS firmware on a SSD drive (C:), and have my working data (documents etc) on a partition on a separate disk (D:). I now want to install Ubuntu (v 14.04.3) on the remaining unformatted space on D:\ using with the option of choosing system using GRUB. There are of cause fine descriptions around (e.g.  and ). My question is how to setup the partitions in the "something else"- option during the Ubuntu installation.   In  tutorial they assume that all partitions on the D-drive can be deleted; however I only obviously want to keep the working data on the existing D-partition, and place Ubuntu on the residual space (or part of it) on the D:-drive.  A) How is this ensured ? B) how many partitions should I make (boot, root, home, swap ?)  C) and should boot be made primary, and the others logical ? D) Should I set Device for boot loader installation as/dev/sdb - will this not erase the existing D-partion ? Need assistance shrinking MDF File Verbose logging was accidentally left on for one of our database ballooning our database MDF file from roughly 90GB to 192GB.  We've disabled verbose logging, truncated the logging table but now we want to shrink the MDF file to reclaim disk space as the drive the MDF file is on is only around 200GB. I don't have the luxury of increasing its size. Our disk space monitoring tool is alerting me that drive space is less than 8% over and over and over.  Given this is the first instance this has ever happened, we don't expect to ever need that extra 102GB of disk space again. We'd like to reclaim it.   I've tried to use the GUI to shrink the database and the files but it doesn't actually change in size. I've also tried using DBCC SHRINKFILE and DBCC ShrinkDatabase with NoTruncate and TruncateOnly. No matter what I do the file doesn't seem to budge.  One potential issue is that somehow the database initial size is 188GB. Deleting and re-creating the database isn't a very practical option for us so how can I shrink the MDF file and reclaim our disk space?  Running dbcc shrinkfile('My_Data'), I get the following results:  DBID: 5  Field: 1 CurrentSize:24030464 MinimumSize: 128 UsedPages: 17770472 EstimatedPages: 17770472   The database MDF file is still the same size (192,243,712 KB).  The table has a clustered index:  Name:TRACES ObjectID: 394588594 Type: Clustered Index/b-tree   The query:  SELECT     name,     size/128.0 - CAST(FILEPROPERTY(name, 'SpaceUsed') AS int)/128.0 AS AvailableSpaceInMB FROM sys.database_files   ...for the database I am trying to shrink, returns:  Name: My_Data AvailableSpaceInMB: 48693.375000 Name: My_Log  AvailableSpaceInMB: 67028.437500   I've also tried shrinking in small chunks using a PowerShell script that shrinks in 20MB increments. That also doesn't change the size of the MDF file.  I've tried dbcc shrinkfile(My_Data) without any other options from SQL Management Studio. It runs for a long time, finishes, and the MDF file is still the same size. Specifying a target size, it runs for a good 30-40 minutes (finishes) and nothing changes file size wise.  I ran this: DBCC SHRINKFILE (N'My_Data' , 139045) and get the following results:  DbId: 5 Field: 1 CurrentSize: 24030464 MinimumSize: 128 UsedPages: 17808744 EstimatedPages: 17808744 Determining if a file is a hard link or symbolic link? I'm creating a shell script that would take a filename/path to a file and determine if the file is a symbolic link or a hard link.   The only thing is, I don't know how to see if they are a hard link. I created 2 files, one a hard link and one a symbolic link, to use as a test file. But how would I determine if a file is a hard link or symbolic within a shell script?   Also, how would I find the destination partition of a symbolic link? So let's say I have a file that links to a different partition, how would I find the path to that original file? How do I batch convert many Word documents and have them saved as [originalfilename].pdf? Let $X$ be an arbitrary random variable  takes values in $\{0,1,2,...,10\}$. What are the minimum and  maximum values of variance of random variable $X$? Would someone give a thorough explanation of 1.14 Minecraft's /data modify? Okay, so I've been searching all over the internet for an explanation of data modify ever since I heard Sethbling passively mention it in one of his videos. The only  thing I could find on it was the wiki and the update log for the 1.14 snapshot. So, I checked these, and they hardly explained it at all. I can get /data modify block 123 20 123... and that's as far as I get.  Minecraft wiki does not at all define clearly what  is (the thing meant to go after coords), nor does it specify what each operation does to what. Operations include (without explanation, and excluding set (which it does explain)): append, insert, merge, and prepend. Then, it has from|value as the next option, which aren't explained either. After this, it just has block/entity and coords/id. So, I know the format (mostly), but I haven't the slightest idea what any of it means. And nothing I've seen on the internet even mentions the command save for Minecraft wiki itself.  Please explain if you know what data modify is. Thanks! How to install JSTL? The absolute uri: http://java.sun.com/jstl/core cannot be resolved Multivariate linear regression vs. several univariate regression models In the univariate regression settings, we try to model   $$y = X\beta +noise$$  where $y \in \mathbb{R}^n$ a vector of $n$ observations and $X \in \mathbb{R}^{n \times m}$ the design matrix with $m$ predictors. The solution is $\beta_0 = (X^TX)^{-1}Xy$.  In the multivariate regression settings, we try to model   $$Y = X\beta +noise$$  where $y \in \mathbb{R}^{n \times p}$ is a matrix of $n$ observations and $p$ different latent variables. The solution is $\beta_0 = (X^TX)^{-1}XY$.  My question is how is that different than performing $p$ different univariate linear regression? I read  that in the latter case we take into consideration correlation between the dependent variables, but I don't see it from the math. How to remove/install a package that is not fully installed? How do I install additional drivers? I've just installed Ubuntu and I need either video, wireless, or some sort of other manufacturer (non-opensource) driver. How can I run the tool that will fetch all of these for me? I'd like graphical instructions.  Related: