at the moment I'm developing in a more "uncool" kind: I write my stuff and see if this works with manual interaction. (For the most time I'm writing java based webapps)  I know that unit-testing would cut some of the bugs I meet in devtime but to be honest: I dont know how go with unittesting. Especially I don't really have a clue how I test respectively split my code in small units which can ran in Junit or something.   I really would appreciate it if someone could point me literature, blog or tutorial to get a little deeper into this topic or much better: Maybe you can share some of your experiences.  Cheers and regards
Unit testing is, roughly speaking, testing bits of your code in isolation with test code. The immediate advantages that come to mind are:  Running the tests becomes automate-able and repeatable You can test at a much more granular level than point-and-click testing via a GUI    My question is, what are the current &quot;best practices&quot; in terms of tools as well as when and where to use unit testing as part of your daily coding? Lets try to be somewhat language agnostic and cover all the bases.
\foreach not behaving in axis environment Am hesitant to ask yet one more embarrassing question, but I can't seem to see the problem with the \foreach in the MWE. It should produce several horizontal lines but only produces the one with the yValue as specified in the \newcommand{\yValue}{0.3}:  Code: \documentclass{article} \usepackage{pgfplots}  \newcommand{\yValue}{0.3}  \begin{document} \begin{tikzpicture} \begin{axis} [  ymin=0,  ymax=1,  xmin=0,  xmax=1, ]  \foreach \yValue in {0.00,0.1,...,1.00} {     \draw [red] (axis cs:0,\yValue) -- (axis cs:1,\yValue); }  \end{axis} \end{tikzpicture} \end{document} How do you configure proxy settings in the Ubuntu Server or Minimal (CLI) versions using the terminal? (c) Let $\mathcal{L}^*\subseteq\mathcal{L}^{\text{FOPC}}$ be a first order language of predicate calculus consisting of three unary function symbols $f,g,h$.  (i) Write down an $\mathcal{L}^*$-sentence $\phi$ such if $\mathcal{A}$ is an $\mathcal{L}^*$-structure with $\mathcal{A}\vDash\phi$ then the restriction of $h_\mathcal{A}$ to the range of $f_\mathcal{A}$ gives a one-to-one function onto the range of $g_\mathcal{A}$.  (ii) Write down an $\mathcal{L}^*$-sentence $\psi$ such that if $\mathcal{A}$ is an $\mathcal{L}^*$-structure with $\mathcal{A}\vDash\psi$ and the domain $A$ of $\mathcal{A}$ is finite then the cardinality $|A|$ is a square.    Part (i) is easy enough, but I'm having trouble with part (ii). I assume that you can use part (i). My initial idea was to use $h$ to ensure $|Range(f_A)| =|Range(g_A)|$ but I'm not sure where to go from there. Thanks. It's known that when you're connecting to a wrong server via ssh and send your password  to it, your password comes in a plain text and a server saves it by default. Probably. I wonder, where I can retrieve it? I don't see it in /var/log/auth.log, although I do see all the attempts to authenticate. Record Animation In BGE I am having trouble getting the Record Animation setting to work in the BGE. Is it possible to record animated characters that are controlled using BGE's logic bricks with some script? In my script I change the positions of the characters bones. It is me who am to blame.    It is I who am to blame.      Which one is correct here? I am bewildered about these two sentences. "Your python3 install is corrupted" I want to upgrade from Ubuntu 16.04.5 LTS to 18.04, so ran sudo do-release-upgrade. After downloading and extracting bionic.tar.gz I get:  Can not upgrade   Your python3 install is corrupted. Please fix the '/usr/bin/python3' symlink.   I saw  and so I did sudo ln -sf /usr/bin/python3.6 /usr/bin/python3 thinking that it would be a similar problem. But that didn't work (still same error message).  I have a few python versions:  $ ls /usr/lib | grep python python2.7 python3 python3.5 python3.6  $ update-alternatives --display python3 python3 - auto mode   link best version is /usr/bin/python3.6   link currently points to /usr/bin/python3.6   link python3 is /usr/bin/python3 /usr/bin/python3.5 - priority 1 /usr/bin/python3.6 - priority 2   How do I fix python3? Generate random numbers uniformly over an entire range I need to generate random numbers within a specified interval, [max;min].  Also, the random numbers should be uniformly distributed over the interval, not located to a particular point.  Currenly I am generating as:  for(int i=0; i&lt;6; i++) {     DWORD random = rand()%(max-min+1) + min; }   From my tests, random numbers are generated around one point only.  Example min = 3604607; max = 7654607;   Random numbers generated:  3631594 3609293 3630000 3628441 3636376 3621404   From answers below: OK, RAND_MAX is 32767. I am on C++ Windows platform. Is there any other method to generate random numbers with a uniform distribution? What is the terminology for data aggregated via summed totals versus data aggregated via means? The two types of data differ in that if you decide to decrease the temporal (time) resolution of the first type of data you take the mean of lower the resolutions. With the second you take the sum over the lower resolutions. Here is a concrete example  Gas Used (kWh), Outside Air Temperature (C), Time Resolution (Minutes) 100, 20, 20 140, 22, 20 120, 21, 20   Here the hourly (60 Minute) resolution data is clearly  360, 21, 60   and is found by averaging the temperature and summing up the gas used.  What I really wish to know is what the names for each of these types of data are called. I understand that this question is not the best but it is hard to ask a question about something whose names you do not know. If you have a better way of articulating the question then please go ahead and edit it. View approximate number of users online Is there any way to view the number of users online at any given time (or even an approximation)?  This could be really useful to provide an indication of whether your question is likely to get answered any time soon.  It could also provide a bit of an indication for why your question is getting very low views - if there are only a few users online, then that could be the reason for little interest in a question, whereas if there are lots of users online and the question still doesn't garner many views, then maybe it needs to be rephrased or something.  I know that this can't be used definitively, but it could be used as a rough guide, and could also just be an item of interest.  Perhaps it could show the number of users that have been seen in the past 5 / 10 minutes? (Shouldn't be too hard, since each user page already shows the last time that they were seen). Syncing folders outside Dropbox using Symbolic Links and Junctions I've been reading a lot of information on this and yet I'm still unsure if its possible.  What I want to achieve is: sync a folder that is outside Dropbox and any changed to that folder or the files within get mirrored to the Dropbox folder and the Dropbox server.  This is what I've tried: I've install Link Shell Extension. Picked a folder with 10 pictures inside and created a junction for it inside the Dropbox folder. When I delete a pictures from inside the original folder (outside Dropbox) the change is reflected in the Junction folder inside Dropbox Folder, not on the server.  The exact same behaviour with the Symbolic Link option.  If I manually select Pause Syncing from Dropbox system tray icon and then Resume syncing = it uploads the changes to the server.  I know I can move all my files inside Dropbox folder and create the junctions/symlinks at their original locations but I want to do it the other way around.  Also what is the difference between choosing the Junction and Symbolic Link Option in regards to a folder?  Thank you. Indefinite integral of secant cubed I need to calculate the following indefinite integral:  $$I=\int \frac{1}{\cos^3(x)}dx$$  I know what the result is (from Mathematica):  $$I=\tanh^{-1}(\tan(x/2))+(1/2)\sec(x)\tan(x)$$  but I don't know how to integrate it myself. I have been trying some substitutions to no avail.   Equivalently, I need to know how to compute:  $$I=\int \sqrt{1+z^2}dz$$  which follows after making the change of variables $z=\tan x$. I had a Windows 7 installation on my 1TB SSD laptop with 4 primary partitions. I wanted to install Lubuntu Linux but the process failed with an error which kind of said:     cannot write MBR   It gave me an option to put an MBR somewhere else or to boot without MBR. None of these options worked and it became a useless install. After this failed dual boot attempt, Windows would give a BSOD wit Code 007 ending - translated to inaccessible boot device. That is a huge NTFS partition and I don't think I have any other media to back it up before formatting it.  My only option is somehow rebuilding the old MBR. Hence I started creating a whole bunch of live USB boot environments  including Super GRUB Disk and MiniTool Partition Editor Live CD, but none of this could ever help me recover my lost MBR.  Win PE 4.0 reported the partition as bad disc and the latest version did not even have an option for MBR. I managed to create a live USB with Testdisk Running on Ubuntu. Whatever partition was seen as HPFS on quick  search was written in the MBR and after this the disc is totally unreadable. Earlier I could see my data through Linux and now I can see nothing.  Here are my questions:   When some data could be read (but Windows would not boot) the MBR was shown as dynamic MBR. As far as I know dynamic MBR is a Windows concept and my Linux attempt would not have converted it. While installing Linux I tried to delete 2 primary partitions which I found to be not really useful (I backed up their data first). So I am not sure what created the dynamic MBR.  Did my dual install convert those basic MBR to dynamic MBR? How did that happen? Here is a screenshot of my deep search attempt with TestDisk which is still in progress. I can see 4 NTFS partitions and one of these two system partitions should be the original MBR. When I tried to write both these system partitions (after stopping the deep search momentarily) I got an error like "partition not found". The file system utility showed me that there is no backup sector and that may be the reason why it cannot be read.  What other Resorts do I have, other than doing a plain format and then using some recovery tool to recover all my lost data? I am not even sure I will recover the folder names.  What other options should I be trying to restore my old MBR so Windows can boot?      Update  as of last I managed to create a live USB w/ W7  I used AOMEI Partition assistant 6.0 and on deeper  search I can see the 909 gb partition - it wont let me select it for recovery. I am sorry if my earlier Q was not clear. I referred to restoring an MBR from a partition . What happened earlier  - superficial search revealed all old partitions but NOT this one   and the later partitions showed up on Deep search &amp; I can select Other partitions for recovery but for this one. It wont let me select the partition I want  Here are some more screen shots    So in summary all that happened is   4 primary windows 7 partition -->  wanted to install Linux so I deleted 2 non bootable partitions after backing them up  ended up with BSOD ( inaccessible boot device ) and noticed that some windows partitions showed up as Dynamic MBR  (using Live USB Linux,gparted )  Use standard testdisk procedure to write MBR from the superficial NTFS-HDFS partition.  this is where I screwed up . Hindsight I should have really done a deep search and caught the 901gb partition to write MBR. I am not sure if I can undo this action  after this - life gets worse. I am  on a ventilator ! Now C is unreadable by windows and linux both and testdisk cannot list file ( see screenshots ) and I have been using a series of live USB's with some recovery s/w but no luck. ALL I want is to recreate that 901gb partition and the boot partition and put the MBR on the latter so I can get my windows 7 back again For multiple OTP keys, why not do this:  Key = Hash[(EC)DH Shared Secret + Counter]  The counter will increase per message, and the output of the hash will be random for each new unique input into it. What are the problems or weaknesses with this design??  EDIT: For clarification: both parties will have the shared secret from an ECDH exchange, random numbers from Pythons os.urandom for generating the ECC key Creating Centrelines from Road Polygons/Casings using ArcGIS Desktop? I want to create center lines from road polygons.   Are there any automated tools in ArcGIS for Desktop to do this?  I am including a Screenshot of my vector file below. What is a Generic Handler in asp.net and its use? On Takodana,      the main characters and various bar patrons can see the planet Hosnian Prime being destroyed by Starkiller Base with their (respective) naked eyes. How did they see this? Is the Hosnian system close enough to see? If it's not very close and they could just see the explosion, how did the light from it reach them so quickly? I am trying to prove the following statement but have trouble  comprehending/going forward with some parts! Here is the statement:     If $A$ is any set, then  $|A|$ $&lt;$ $|P(A)|$   Here is what I have so far:  We need to show that there is an injection from $A$ to $P(A)$ but not a surjection.   A natural choice for an injection is the function $ f(x)$ $=$ $\{x \}$, which in plain English, takes any element $x$ (that is in $A$) and sends it to the one-element set $\{x \}$. Thus $f(x)$ is injective!  To show that there is no surjection, for the sake of contradiction, assume there is a surjection. Here is where I start to have trouble. Surjectivity means that every element of the co-domain is mapped to an element of the domain, correct? Consequently, in this particular case, we are "matching" sets (from $P(A)$) to elements (from $A$) right?  If the above is correct, my problem arises here. I am not sure how to prove that $f$ is not surjective. Unfortunately, I am easily confused by notation so please explain in English.  Thank you in advance!! :) I have county data in which the &quot;FIP&quot;s (actually State &quot;FIP&quot;s and County &quot;FIP&quot;s combined). I have data imported as CSV with the sames &quot;FIP&quot;s data titled 'STCounty'. However, the shapefile &quot;FIP&quot;s is listed as a Real and the CSV came in as an Integer and the Join function does not seem to work.  The drop boxes are greyed out/empty. So the bigger questions is how do you change the attribute type in a table? I tried to create a new column in the shapefile (county data) and set it to an integer and then multiply the &quot;FIP&quot;s*1, but got a column full of NULL. I am new to QGIS and have a lot of experience in MapInfo, so the join concept is not new to me, just the syntax in QGIS. Can someone define what exactly 'POCO' means? I am encountering the term more and more often, and I'm wondering if it is only about plain classes or it means something more?