Question: how can i remove an autocomplete suggestion from safaris address bar?

Response:
In Safari, to remove specific websites from your history, you can use the keyboard shortcut ⌘ Y to show your history, then enter the web site name in the search field, select it, and press delete.
Alternatively, deleting the website from your bookmarks may resolve autofill issues as it did for another user.
Lastly, another method is to type the website directly into the Safari URL bar, use the 'Search in History' option, select all, and delete.


Question: where do magic hashing constants like 0x9e3779b9 and 0x9e3779b1 come from?

Response:
0x9e3779b9 is the integral part of the Golden Ratio's fractional part 0.61803398875… (sqrt(5)-1)/2, multiplied by 2^32.
0x9e3779b1 is the prime closest to 0x9e3779b9 and appears to be a bit of "cargo cult" as this is not a modular hash.


Question: how can i find available network interfaces?

Response:
To identify available network interfaces, the simplest method is to use ifconfig -a.
Another approach is to do cat /proc/net/dev, a simple and easy-to-memorize command.
It's worth noting that for Solaris, the equivalent command is ifconfig, for Windows it is ipconfig, and for Linux, it is ip.


Question: how can mom monitor my internet history from a distance?

Response:
Anyone with (access to) your login name and password can access your search history, so it could be that your mum has guessed your Google password, or she could be a shared browser user if you logged into your account on a computer at home and did not log out, meaning all your history is being synced to that browser.

As your mother pays for your internet, she may have taken up the offer of a plan “for kids” with parental control, including full reports of visited resources.

If it is true that she knows what you access over HTTPS, this categorically rules out any sort of “from a distance” spying, as once your request leaves your browser, no one knows what that request is until it reaches the server it's going to, but it is possible that internet monitoring software (also known as legal spyware) has been installed on your computer when you set it up, and your mother could have found such a tool by typing full sentences into Google easily enough, and they're probably one-click installers just for people like her.

Also confirm that there is no hardware device like a keylogger installed on your machine.


Question: what tiny thing in ios 5 makes you smile, or has caught you off guard?

Response: Here are some features people like in iOS 5: swipe Camera to view Photo Roll when Camera.app is open; tap on the screen in Weather.app to view 6-day, 12-hour and hour-by-hour forecast; 6-day forecast in Weather Widget for Notification Center; Ringtones serve as Notification Tones; Maps.app now features alternate routes; Usage shows how much space each app is using; Emoji is now a keyboard that can be used by anybody; "Clear Skies at Night" Icons in Weather.app; send and receive iPhone FaceTime calls via email addresses; third-party audio apps can publish song data to Lock Screen / Multitasking bar; Bluetooth Volume Control and Text Display (volume on headphones controls volume on iPod Touch); you can rename your iPod or other iOS device without a computer; Siri can be activated at the lock screen without a passcode;  the pause button for timers in Clocks.app; retractable Keyboard in Messages.app; swiping right when reading e-mail displays message list in portrait mode on iPad; more convenient "Find On Page" searching; ability to edit the colors of Exchange calendars; just pull the keyboard apart with your thumbs on the iPad and use the button on the bottom right to reposition the split keyboard on screen; multi-touch gestures on iPad (pinch to close app, swipe up with four fingers to show the app switcher, swipe left/right with four fingers to switch between running apps); dictionary word definitions from text selections; Keyboard shortcuts; MobileSafari; custom vibration patterns; LED flash on Alerts; tap and hold the  button to display a list of recently closed tabs; the ability to remove the app or remove 'friends' can be restricted; mass mark as Read/Unread/Flag; alternative Shutter Button; more dash types (tap and hold the dash on the keyboard gives an en–dash); additional data in Calendar when rotated; drag and drop recipients between To, Cc and Bcc in Mail app; tap and hold on a song/podcast title to get a pop-up of the entire description and read long titles/artist/album names; double tapping the home button on the lock screen shows you both media controls, and a camera icon to the right of the unlock swiping track; Speak to me; Current Volume Reminder (switching the phone from Silent mode back to normal now displays the current ringer volume); Private Browsing Mode for MobileSafari; Lock Camera Exposure+Focus; easily view a location in a calendar event; Swipe Individual Notifications; Notifications allows control over badge counts; iForgot My Password; unified Single Caller Log; in-app Download Progress indicators (podcasts that are downloading are shown in the Music app with a circular completion icon); the Immortal Newsstand; in the Photos app, you can rotate by any degree, not just at specific intervals; you can lock the orientation into Landscape; view third-party app art at Lock Screen exclusively; Ghost Buttons on the iPad's Split Keyboard; hold the compose button to bring up the most recent draft email; swipe up on the camera icon in the lock screen to take a photo and swipe down to re-lock the phone once done with the camera; and backspace on the numbers you enter in Calculator.


Question: what stops google from saving all the information on my computer through google chrome?

Response:
There are no processes and systems that stop this.
SELinux is an operating system-level technology that imposes strict restrictions on the processes that can be accessed, such as your browser.
Trust is equally essential alongside objective measures in determining the safety of data on your computer when using services like Google Chrome.
If one is particularly cautious, outgoing firewalls can be configured to monitor and potentially restrict traffic, although this can be impractical due to the complexity of web traffic.
To make your computer data inaccessible, you could unplug it from all networks, which guarantees the data cannot be copied.
Lastly, lawyers and legal documents like the Google Chrome Terms of Service play a role as a sort of agreement on what Google can and cannot do with user data.
There are policies in place that rely on the norms of trust within society, yet no direct technical mechanisms ensure complete prevention of unwanted actions.


Question: do you need a wsdl for soap?

Response: SOAP can be used without WSDL, but such services will not be found using the discovery mechanics offered by WSDL.


Question: being told my network isnt pci compliant. i dont even have a server! do i have to comply?

Response: Don't secure your network: you can transfer PCI responsibility away from you to a billion dollar financial company, such as Square or PayPal Here, who will provide a modern card terminal with Point-to-Point Encryption (P2PE).


Question: how did google know i looked something up?

Response:
The reason websites may know about your visit is primarily due to their use of Google tools, such as Google Analytics or advertising services, which provide them with visitor information.
Contrary to some beliefs, Google does not know the specifics of your searches; it is only aware of your visits to websites that share this data, and such information does not include details from search engines like DuckDuckGo that conceal your queries.
Additionally, Google and other platforms utilize "retargeting" strategies, allowing them to display targeted advertisements based on your previous site visits, across various unrelated websites within the same ad network.
This is due to Google's algorithms selecting the most profitable advertisements to display based on user activity.
The inclusion of tracking tags from Google, as well as other Demand Side Platforms (DSPs) and Data Management Platforms (DMPs), on websites, contributes to this targeted marketing, affecting what ads you see online.


Question: whats a good ssh tunneling client for os x?

Response:
SSHTunnel, a free application for managing SSH tunnels, is still going and is stable despite not being updated for a while.
It does, however, enjoy support, is currently available in the Mac App Store and works on Lion.
Meanwhile, Coccinellida also works on Lion but has some bugs, while Meerkat is also worth looking at.
For a front-end application to "ssh" on Lion, iSSH is used, providing an easy way to start an SSH connection.
Meanwhile, Secure Pipes is free option you might want to consider.
An SSH Tunnel via OSX's built-in Terminal is another approach, which involves setting up an SSH tunnel through the Terminal and configuring a web browser to route traffic through it.
Also, Core Tunnel, supported by Codinn, offers a user-friendly tunnel management system, compatible with various protocols.
Sshuttle is highly recommended for being a handy solution, while BitBar, a secure, open-source solution, provides a way to install an SSH tunneling script after  initial configuration.
You could also establish a tunnel through the terminal using the command line: $ ssh -N -L SOURCE-PORT:127.0.0.1:DESTINATION-PORT USER@SERVER-IP.


Question: turn off buffering in pipe

Response:
To address issues with command buffering in Unix-like systems, you could employ the `unbuffer` command, part of the `expect` package, when executing long-running commands to prevent the system from using the default 4-KiB buffering, which often causes delays.
Additionally, it may be necessary to apply `unbuffer` to each command within a pipeline to achieve the desired interactivity.
Alternatively, the `stdbuf` program from GNU Coreutils can be used, with the option `-i0 -o0 -e0` to turn off buffering for input, output, and error or with `-oL -eL` for line buffering, provided the application adheres to stdio buffering policies and is dynamically linked.
For more granular control, setting the pipe ulimit to a single 512-byte block is another approach, which greatly reduces the buffer size involved while not turning off buffering completely.
Creative solutions can bypass issues by directly manipulating the input stream by using a combination of `echo` and `cat` commands to feed instructions to an executable shell.
Lastly, there is also the `scriptee` method, which is a workaround to the `tee` command, especially on BSD-unix systems, although, on Linux, it comes with the inconvenience that the prompt will not return until after an additional enter press.


Question: why is my internal ip address (private) visible from the internet?

Response:
Your internal IP address could be exposed due to the X-Forwarded-For header sent by your browser or ISP.
Alternatively, it might be obtained through JavaScript running on your machine.
While the underlying TCP/IP protocol does not disclose your internal address during public internet routing, it can be disclosed through headers and service banners communicated at layer 7 and it will probably be coming from your perimeter router.
A known technique to discover internal IP addresses involves using JavaScript's RTCPeerConnection.
WebRTC's implementation in your browser, particularly in Firefox and Chrome, also enables the retrieval of local and public IP addresses, and this has been utilized by some websites to differentiate between real visitors and bots.
The use of RTCPeerConnection is confirmed by examining JavaScript code in some links, specific to browsers that support it.
Moreover, methods like WebRTC are among several ways to unearth LAN IP addresses, as shown by past security research and method demonstrations.


Question: why do ads for s/w engineers always say they offer a fast-paced environment?

Response:
Job ads for software engineers frequently emphasize a fast-paced environment, because most job ads aren't written by software engineers.
For some, "fast-paced" equates to excitement, suggesting a wealth of interesting responsibilities and opportunities for skill development.
Also, the reason could be that good developers get bored easily and when they get bored they leave.
To some, a fast-paced environment implies a high workload and the need for employees to stay productive.
The phrase "fast-paced environment" could be interpreted either as code for "We change our minds a lot about what we want from the software", or for wanting someone who can keep up with technology or learn and adapt quickly to new challenges.
However, the phrase also raises concerns about the potential for unpaid overtime, with some interpreting it as a euphemism for extended work hours and a challenging and stressful atmosphere.
It might also serve as a subtle warning, possibly aimed at an attempt to scare away the lazy programmers.
Another perspective suggests that the term "fast-paced environment" is deliberately vague, allowing individuals to interpret it in a way that aligns with their preferences or a way of making the ad sound cool or modern and avoid seeming outdated.
Some say that most HR departments go to their competitor's website, and find a similar job to the one they need to fill, copy, and paste.
Job ads, often concise and filled with buzzwords, may not truly capture the complexities of the work environment.
While many focus on the potential negatives of a fast-paced setting, some argue that it is a necessary element to prevent stagnation in software development.
Additionally, the phrase might reflect a company's commitment to making business-based decisions driven by customer requirements.


Question: run a command without making me wait

Response:
To run a command in the background, the ampersand (&), or occasionally percentage (%) symbol is appended at the end of the command in the syntax: 'long_command with arguments > redirection &'.
Additionally, there are tools like `screen` or `tmux` that allow for detaching the entire shell from the background process, which can later be re-accessed, even from a different computer, for example, `$ tmux new -d 'longrunningcommand'`.
Using `nohup` before the command, followed by '&', ensures that the process continues even if the current shell is closed, and it records the output to a log file, nohup.out.
The standard output (stdout) and standard error (stderr) streams can be redirected to files to avoid cluttering the terminal, using `>` for stdout, `2>` for stderr, and `&>` for both.
When redirecting both stdout and stderr to a single output file, the syntax `command > output.log 2>&1 &` is used.


Question: does `sl` ever show the current directory?

Response: Yes, the command 'sl' can function equivalently to 'ls' if you establish the proper alias in your shell environment.


Question: new developer cant keep up with branch merges

Response:
Struggling with branch merges as a new developer might be a sign of bad software engineering on the company's part.
Running 'git fetch' regularly, not 'git pull,' ensures you stay updated with the latest changes from the development branch.
Git's interactive rebase (git rebase -i) can be a powerful tool in managing branch merges.
However, it's important to recognize that difficulties in branch merges often extend beyond individual engineering capabilities and can be a team-related problem.
Proactive measures, such as regularly merging the developed branch into your feature branch help avoid conflicts in the future.
Strategies like merging with the development branch whenever changes occur, engaging in discussions with colleagues about conflict-avoidance techniques, merging earlier and changing fewer lines, as well as getting a good diff tool can significantly ease the process.
While handling conflicts in git merge might be simpler than in git rebase, open communication with the team leader is essential to coordinate modifications by concurrent developers.
Avoiding multiple people working on the same files, supported by immediate regression tests is advised, and rebasing into a single commit before merging is an effective approach.
Depending on the project's code, pair programming may be the best approach.
Emphasizing the importance of regular merges into the development branch, breaking tasks into smaller, manageable units, and having a working code that passes tests daily facilitates smoother integration.
Alternatively, if frequent merges with the develop branch are undesirable, using 'git pull --rebase' can offer a workflow resembling SVN.
Practical advice includes merging granular frequent commits, frequently rebasing your branch, and developing familiarity with Git commands.


Question: why are chips safer than magnetic stripes?

Response:
The chip on a card cannot be cloned because it securely stores a secret number which it uses to prove its knowledge without revealing it.
With this level of security, it's hard for an attacker to replicate the card, as the card can perform cryptographic operations that require knowledge of a well-protected key.
The chip contains information that it never discloses, enabling it to authenticate without actually providing the secret.
So, a vendor is unable to simply duplicate the chip when it is used because it does not reveal its secret piece of information.
So, even if a chipped card is used at a compromised machine, it does not enable the perpetrator to conduct future fraud with the card information since the response provided by the chip for verification is unique to each transaction.
In the event of a stolen chip and PIN card, the chip alone is not enough for fraudulent use without the PIN.


Question: ulimit: difference between hard and soft limits

Response:
A hard limit, which is set to ensure security, can only be raised by the root user, although any process can lower it.
On the other hand, a soft limit, while convenient for processes that cooperate, can be changed by the process itself at any time.
However, it is not suitable for security purposes due to its malleability by the processes it governs.


Question: linux: difference between /dev/console , /dev/tty and /dev/tty0

Response:
/dev/console is a set of virtual devices  which can be set as a parameter at boot time; the Linux Kernel documentation explicitly identifies /dev/console as a character device with a specific number (5,1).
This set includes devices like /dev/tty[0-N], where N represents the highest numbered TTY, and /dev/tty0, which is the default virtual console.
The Linux Kernel documentation further clarifies that /dev/tty is the current TTY device, /dev/console is the system console, and /dev/tty0 is the current virtual console.
Character devices like /dev/console and /dev/tty0 allow for reading and writing to the current virtual terminal.  Moreover, /dev/tty is recognized as one of the three key standard devices defined by POSIX.


Question: is the save button delay in a firefox download dialog a security feature? what does it protect?

Response:
Implementing a short delay in Firefox helps prevent the user from accidentally selecting the wrong option when interacting with a file dialog.
Additionally, the injected delay is a security feature that serves to deter attacks that hinge on misleading the user into bypassing the dialog box.
Firefox's tactic of momentarily disabling the "OK" button compels users to re-evaluate their actions and scrutinize what they are about to download.


Question: what is the proper term for ipaddress/hostname:port

Response: Some possible terms are: socket address pair, 4- or 5-tuple, endpoint, authority, or host.


Question: how do i zip/unzip on the unix command line?

Response:
To zip files in a compressed format, the GNU tar program is generally used with the following syntax: tar -zcvf myfile.tgz, which will compress the current directory, or you can specify other filenames to compress.
To unzip the compressed file, the command tar -zxvf myfile.tgz is employed.
Typically, tar is used to create an uncompressed archive, which can then be compressed using either gzip or bzip2.
To decompress these archives, you would use the gunzip and bunzip2 commands, respectively.
If dealing specifically with the Zip file format, the zip and unzip commands are the straightforward choices for compression and decompression.
The pax utility is often recommended over cpio and tar for its ability to archive files and compress the archive, differentiating it from the process of zipping, where each file is compressed individually before archiving.
The unzip and zip -r archive.zip commands can be employed to simplify archive creation on the command line, provided they are available on your system.
A tool like 7-zip, typically included in the package p7zip, offers commands such as 7z and 7za for creating and decompressing 7z archives, as well as support for standard zip archives.
Should you lack the zip and unzip packages but have Java, the jar utility can be used as an alternative for unzip operations with the syntax jar -xf file.zip.
BSD Tar is also capable of creating and extracting archives using commands like bsdtar -a -c -f for compression and bsdtar -x -f for decompression for additional flexibility.
An example of using the zip command to compress a list of modified files with an intermediary text file listing all files to be zipped can be realized using the command cat modified-files.txt | zip modified-files.zip -@.
When extraction is the sole concern, dtrx is a tool that simplifies the process by automatically handling different archive formats and necessary actions.


Question: list of all packages installed using homebrew

Response:
Running brew list will show a list of all your installed Homebrew packages.
In addition, brew list --cask will provide the items installed using Homebrew Cask.
You may use brew list | grep 'package-name' or if are looking for specific package.
Brew leaves shows you all top-level packages.


Question: do i really need to install a task manager?

Response:
In most scenarios, it is unnecessary to use a task manager or killer on Android, especially with the latest 2.2 versions, as the operating system manages multitasking more effectively on its own.
Most services that run in the background consume minimal memory unless they are actively engaged in a task.
However, there are infrequent circumstances where a task manager could be beneficial, such as when a run-away process needs to be terminated, which is something a monitoring app like Watchdog might alert you to.


Question: mkdir when directory already exists?

Response:
Using the `mkdir` command will result in an error if the directory you're trying to create already exists.
Nevertheless, if you employ `mkdir -p`, the command will not return the error and will leave the existing directory's contents untouched.
The `-p` flag specifically suppresses errors related to the directory's existence.


Question: how do i find out which processes are preventing unmounting of a device?

Response:
To identify the processes hindering the unmounting of a device, the lsof command is useful.
Alternatively, if you are certain and wish to terminate all related processes and proceed with unmounting, you can use the following approach: fuser -Mk /mnt/path umount /mnt/path.


Question: where are certs stored on iphone?

Response: You can find certificates installed on your device in Settings → General → About → Certificate Trust Settings.


Question: how can i find out which users are in a group within linux?

Response: To find group memberships in Linux, you have various commands at your disposal: the "grep" command can be used with specific syntax to list users in a supplementary group;  the "groups" command checks all the groups a specified user belongs to and can list all local users along with their groups; the "lid" command also lists users within a certain group; "groupmems -g groupname -l" lists all users of a named group; lastly, when you need information from network services like LDAP, the "getent" command is preferred since it pulls data from the same name service sources that the system uses.


Question: whats wrong with circular references?

Response:
A circular reference is characterized by high interdependency, as it involves twice the coupling of a non-circular reference and can create bootstrapping problems, especially in long-lasting environments.
These references can also lead to issues such as high coupling, the necessity to recompile classes, the prevention of static linking, and the possibility of crashing recursive algorithms.
They can hinder dependency injection and increase the complexity of understanding a program's functionality.
In data modeling, circular references should be critically evaluated to prevent redundancy and excessive coupling in code, and it is often possible to model relationships differently, such as using graphs for trees.
Relationship redundancy, particularly in database design, can lead to data corruption or inconsistencies and should be prevented.


Question: what is the difference between directory and path?

Response: A directory is your current location, while a path indicates the steps or route taken to arrive at a particular file or directory.


Question: how can i explain to non-techie friends that cryptography is good?

Response:
The concept of "cryptography" emphasizes the importance of "private communications" for societal well-being, reflecting more of a philosophical than a technical issue.
You can relate the concept to the flawed arguments from the RIAA's anti-piracy campaigns of the early 2000s, making analogies with physical security measures like armored cars for money, safes for valuables, and locked front doors for privacy.
Another perspective suggests equating "cryptography" with household "locks and keys" to challenge views on privacy and security.
A rhetorical tactic invites reflection on privacy by asking if people should all use the bathroom with the door open just because someone defecates publicly.
You can also try explaining through film narratives, the movie "Sneakers" is drawn to illustrate the potential calamities stemming from nonexistent or compromised cryptography.


Question: how do we specify multiple ignore patterns for `tree` command?

Response: You simply provide all the patterns to the -I command, separated by |.


Question: how to get the pid of the last executed command in shell script?

Response:
The PID of the last executed command can be found in the "$! shell variable".
You can capture this PID by issuing the command "my-app & echo $!" when running a bash script.
Alternatively, for the specific case of an application named 'my_app', you can use "pidof my_app >> /tmp/my_app.pid" to append the PID to a text file.


Question: how can i grep in pdf files?

Response:
To search within a PDF file via the command line, you can use string manipulation by channeling the file through strings and then employing grep.
If you wish to grep a PDF file, you ought to decompress it first, extracting the text before searching can be done.
You could try installing the pdfgrep package and using the command, "find/path - iname '*.pdf' -exec pdfgrep pattern {} +", "pdfgrep 'pattern' your.pdf" or "pdfgrep -r --include "*.pdf" -i 'pattern'".
It's possible to convert the text within PDFs to stdout and grep the output by using pdftotext.
If your goal is to look for simple strings that aren't compressed or encoded within a PDF, you can use the following grep, "-a STRING file.pdf cat -v file.pdf | grep STRING From grep --help: --binary-files=TYPE", instead of strings.


Question: how do i clear bashs cache of paths to executables?

Response:
The command `hash -r` is used to clear the cache entirely.
Alternatively, to delete a specific entry from the cache, `hash -d' followed by the command's name is used.
It's important to note that the `-r` flag is designed to clear all entries without requiring any parameters.
If only updating the path for a single program is needed, use `hash svnsync `.


Question: how to securely hash passwords?

Response:
It is recommended that additional measures apart from mere password hashing should be applied regarding storage and managing users passwords.
Depending on the algorithm used, it is advised to salt passwords, which basically means appending or prepending some text to the password, and then you should use a strong algorithm.
Employing a per user salt value that is stored alongside the hashed password in the database is recommended to further enhance security.
Passwords should be salted and stretched, which includes hashing several times to increase complexity.
A good password hashing algorithm must be specifically designed for this purpose and involve salt and making the password calculation computationally expensive, with PBKDF2 cited as a method meeting these criteria.
As security concerns evolve, it is advised to add a few more characters to the minimum length of passwords, raise iteration counts, and that we all need to be prepare to move to better algorithms like Argon2.
In practice, PBKDF2 is always used with HMAC, which is itself a construction built over an underlying hash function.
While both bcrypt and scrypt are acknowledged as good solutions to passwords, the latter seems more favorable despite being prone to cache-timing attacks.


Question: how do i change the extension of multiple files?

Response:
The rename command from util-linux can be used for renaming files, specifically changing "txt" to "text" in file names that match "*.txt".
Another method pertinent to Debian involves using the Perl rename command syntax 'rename "s/oldExtension$/newExtension/" *.txt'.
Additionally, the command 'find . -name '*.txt' -exec rename 's/\.txt$/.text/' {} ;' is effective for this task.


Question: how to set to open folder with enter in finder?

Response:
If you are using Mac OS X 10.4.x-10.7.x, the application "PresButan" can be employed to customize this functionality.
Alternatively, for a more modern approach, "KeyRemap4MacBook" offers customization options for key mappings, including the ability to redefine the behavior of the "Enter" key in Finder.
XtraFinder is another tool that provides extensive customization options for Finder, allowing you to set the "Enter" key to open files or folders based on your preferences.
For those using Karabiner, the setting "use return as open" can be enabled to achieve the desired effect; After checking this option, a relaunch of Finder is necessary for the changes to take effect.
An additional solution involves using BetterTouchTool to make the "Enter" key simulate a combination of ⌘ Command + ↓ Down Arrow key press, effectively configuring it to open folders in Finder.


Question: are man in the middle attacks extremely rare?

Response:
Man-in-the-middle attacks are considered less common because they often lack the incentive or need to be performed.
However, significant evidence is available to suggest that this type of attack is common, particularly since some banks have implemented security measures like two-factor authentication in response to these attacks.
Man-in-the-middle (MitM) attacks are prevalent in the banking sector, and companies are targeted daily, sometimes multiple times.
The most common hacking actions include using stolen login credentials and man-in-the-middle attacks, indicating they are significant security concerns.
Man-in-the-middle attacks are a very real threat even today, as considerably large-scale attacks, such as the one in Iran, have been documented.


Question: dns not resolving on mac os x

Response:
For the DNS issue mentioned, one can utilize scutil commands such as `scutil --dns` and `scutil -r hostname` to interact with the configd dynamic store.
Also, bouncing mDNSResponder by unloading and reloading it with launchctl commands can resolve the issue.
Alternatively, running dnsmasq locally can serve as a solution, which involves building dnsmasq and adjusting your DNS settings to use 127.0.0.2.
However, removing any public DNS servers may be necessary until the DNS cache is cleared.
Restarting the DNSResponder by using `sudo killall -HUP mDNSResponder` is another approach, specifically on macOS Mojave.
Another option is manually clearing your home WiFi router's blacklist and executing certain terminal commands such as `sudo killall -HUP mDNSResponder`, followed by DNS utility commands (dig, ping and traceroute), can restore proper functionality.
Finally, a simple yet sometimes effective method is to toggle Wi-Fi off and on, which might improve network connections on a MacBook Pro.


Question: are bad programming practices typical within the software industry?

Response:
It's not unusual to find the application of academic concepts in software engineering to be relatively rare in the industry due to its vast diversity and the specific needs of different sectors.
What one learns in the field of software engineering at university might not be commonly employed in many professional settings, as everyday software-related issues in non-software companies tend to be resolved with simpler solutions.
In the software industry, encountering less-than-ideal practices and results is quite typical, similar to the experiences one might have with any other tradesperson.
The root cause often relates to various factors within the organizational structure that affect how software development is handled.


Question: why does parameter expansion with spaces without quotes work inside double brackets [[ but not inside single brackets [?

Response:
The double bracket ] syntax is much more capable than single brackets .
It does not have the "missing operand" issue and also allows for more C-like syntax with >, <, >=, <=, !=, ==, &&, || operators.
Additionally, double brackets ] are a special syntax introduced in ksh because [ can be troublesome to use correctly, and [[ allows some new nice additions that use shell special characters.
The [ command, on the other hand, is an ordinary command and although most shells provide it as a built-in for efficiency, it obeys the shell's normal syntactic rules.


Question: help! my home pc has been infected by a virus! what do i do now?

Response:
In eliminating a computer virus, a reliable approach involves isolating the computer by completely wiping the hard drive and reinstalling the operating system, an act colloquially referred to as "nuke it from orbit". [1*, 2*, 4* ,6*, 8*]
To properly address the situation, it is important to identify and back up important files and programs, change sensitive website logins and credentials, isolate the infected machine from networks, and change all critical online passwords immediately.
If you desire an extra layer of security during your process, you may want to utilize a virtual machine like VirtualBox.
Additionally, performing scans with anti-virus and anti-malware software, performing "deep scan and clean", making regular backups, and ensuring all software and operating systems are up-to-date are useful practices for maintaining computer health and mitigating future security risks.
Running virus protection, keeping it updated, and installing virus eradication software also serve as preventative measures.
However, if reinfection is a possibility and sensitive information may have been compromised, it's advisable to switch off the PC, disconnect all cables, and seek professional assistance to verify the presence of a virus, secure user files, and proceed with a clean system installation.


Question: how to connect to a serial port as simple as using ssh?

Response:
For those interested in setting up a terminal server, "picocom", in its latest release (2.0), offers a secure way to do so without the risk of shell command injection.
On the other hand, "ser2net" provides a simple and flexible way to connect to serial ports.


Question: how do i type ² or ³ on an apple keyboard (international english layout)?

Response:
To type the characters ² or ³ on an Apple keyboard with the International English layout, an approach is to enter the characters once and then set up substitutions in System Preferences under Language & Text.
Another approach is to use Ukelele to create custom keymaps easily.
For users on OS X 10.7, adding the desired characters to the Character Picker is a potential solution.
In Office programs like Word, you can use the shortcut (Command + Shift) + plus/equals key, followed by typing the desired number.
Additionally, you can utilize the Character Viewer by going to Edit > Emoji & Symbols ⌃⌘Space.


Question: how to take a screenshot with an android device?

Response:
First of all, your phone must be rooted.
If you have an unrooted phone, Dolphin Browser HD with an addon can be used for screen captures.
Once rooted, using an app like Screenshot with either a timer or 'Shake' mode is effective.
Meanwhile, rooted Androids below 4.0 can use an app like drocap2 for screenshots.
The ShootMe app works on the Galaxy Tab even if it's not rooted.
Using Android SDK connected to a computer, you can capture screens by selecting 'Device > Screen Capture' (or Ctrl+S).
For Galaxy S phones with Android 2.2, hold the back key and tap the home button for screenshots.
Android 4.0 or higher devices allow screenshots using Power button + Volume Down button combination.  For Android 10, briefly press Power button + Volume Down buttons for a screenshot.
On an HTC EVO3D allows screenshots by pressing the lock (power) button and home button simultaneously.  Certain phones like the Droid Charge and new LG Android phones have built-in screenshot functions by holding specific buttons.
Similar built-in functionality exists for the Optimus Black using the lock+home button.
Starting with Android 4, a screenshot can be taken without third-party apps by pressing Volume-Down + Power keys.
The Samsung Galaxy S II requires pressing the Power+Home buttons at the same time, though it may be tricky.
The Sony Ericsson Arc with the 2.3.4 upgrade offers a 'take screenshot' button in the power menu.
On rooted devices, Droid VNC server can be installed for easy screenshots.
On Linux, a one-line script can take screenshots on rooted handsets.
The Samsung Galaxy Pocket allows screenshots by pressing the Home button followed by the Power button.
With the Galaxy Note 2, an S Pen can be used to take and adjust screenshots.
Press and hold the Home button until Google Now on Tap appears Tap the share button in the bottom left-hand corner.
Finally, on Android 7.1.2, long press Home for OK Google and issue voice command 'Take Screenshot'.


Question: how do i find out what hard disks are in the system?

Response:
The 'lshw -class disk' command is often used to gather disk information.
On Fedora 14, the 'fdisk -l command' can be used to list out disk partitions and their details, although it requires root permissions to execute.
The 'hwinfo' command is also useful, especially when inquiring about disk hardware information, and can be used with options like '--disk' to get detailed insights about disk characteristics.
Lastly, 'sfdisk -l' is a convenient command for exploring detailed information about physical disks, and it is generally pre-installed on all Linux variants but also demands root access.


Question: delete first line of a file

Response:
To remove the first line from a file, the simplest and shortest way is to use the command `$ sed -i -n -e '2,$p' file.txt`.
Alternatively, another method is to employ `awk 'NR>1 {print}' file.txt > file1.txt`, which will output the result into a new file named `file1.txt`.


Question: vi vs vim, or, is there any reason why i would ever want to use vi?

Response:
Vi does not hold any significant benefits over Vim; in fact, Vim is generally seen as having more advantages.
One of the merits of Vi is that it comes preinstalled on enterprise UNIX systems, while Vim might not be accessible on the installation media for these systems.


Question: how to copy text from vim to an external program?

Response: Hold down the shift key and select text using the mouse cursor to copy it to the clipboard, a function that also supports pasting from the clipboard into vim when running in a terminal like xterm.


Question: what color codes can i use in my ps1 prompt?

Response:
The correct code for creating a white foreground in terminal settings is 37.
Foreground colors include Dark gray (90), Light red (91), Light green (92), Light yellow (93), Light blue (94), Light magenta (95), and Light cyan (96) and for the background:  Dark gray (100), Light red (101), Light green (102), Light yellow (103), Light Blue (104), and Light magenta (105).


Question: can cctv footage be tampered with?

Response: It is possible for anyone with complete physical access to a security system to edit any recorded footage.


Question: what is the website checking about my browser to protect the website from a ddos?

Response:
The process for determining if a connection is valid through using filters involves checking various details, such as the origin of the connection, packet type, size, rate, and the user agent.
To differentiate between authentic browser requests and automated DOS attack bots, the system assesses if the HTTP client is a genuine browser, possibly by comparing behavior against a set of tests.
It has been observed that Cloudflare’s system blocks non-graphical browsers, indicating that these text-based clients cannot properly load or display certain web elements like images, and they do not support JavaScript.


Question: can grep output only specified groupings that match?

Response:
Standard versions of grep lack the capability, but updated versions of GNU grep can perform the desired function.
GNU grep includes options such as -P for Perl-style regular expressions and -o for printing only matched patterns.
Additionally, pcregrep offers an advanced -o option that allows the selection of specific capturing groups to output.
However, grep may not be universally compatible across different platforms because the -P/--perl-regexp option is exclusive to GNU grep and not BSD grep.


Question: how do i unset a variable at the command line?

Response:
To remove an environment variable, run unset ALL_PROXY, but if you've added export ALL_PROXY=… to an initialization file, remove it from there.

You can also set the value of a variable to empty by VARIABLE= or VARIABLE="".


Question: fastest and safest way to copy massive data from one external drive to another

Response:
For transferring large volumes of data, remote sync, or rsync, is a reliable choice.
Another technique frequently used for successful file copying is the command: cp -Rfv sourcefile destinationfile.
Non-command line users have the option of the FreeFileSync app, which efficiently synchronizes data across devices.
Bittorrent sync can be utilized for synchronizing substantial amounts of data, for example, 8TB between different storage devices.
If an exact copy of a drive is required, the Disk Utility in macOS offers a Restore function that performs a block copy, proving to be faster than traditional file copying and ensuring data integrity.


Question: why does dhcp use udp and not tcp?

Response:
DHCP cannot use TCP as the transport protocol because TCP requires both end-points to have unique IP addresses.
The client cannot use TCP because it does not have an IP address of its own, nor does it know the DHCP server address.
Since DHCP is inherently connectionless, UDP makes more sense.
In addition, the DHCP client does not have an IP address assigned until the DHCP process is complete.
Put simply, DNCP uses the broadcasting that we don't have in TCP.
It's not worth the overhead to establish a TCP session; setting up a TCP connection would require an additional round-trip.
UDP is simpler, robust enough and more efficient and functional than TCP for DHCP's purpose.


Question: how do i transfer files from my mac with a broken screen?

Response: The simplest thing to do is boot the Mac in target mode (hold the T key down) and connect it via Thunderbolt or Firewire to another Mac, so you can have visibility without repairing your Mac's screen; alternatively, you could just remove the drive from the Mac and use a cheap $5 USB to SATA connector to mount the volume on a Mac to enter the Filevault passphrase to decrypt the volume.


Question: how to scroll in a terminal using keyboard?

Response:
To scroll back through the command history in a terminal emulator, you can generally use C-a [ to engage scrollback mode, allowing you to navigate using your keyboard.
In most terminals, you can use Shift+PageUp and Shift+PageDown.
In certain environments like Ubuntu’s default terminal, you can use Ctrl + Shift + Up or Ctrl + Shift + Down to go up/down by line.
If you're using VirtureBoxVM on a Mac, you’d press SHIFT + fn + up_arrow or down_arrow.
On FreeBSD systems, toggling screen scrolling is achieved by using the Scroll Lock key.
Additionally, on Linux systems with an Apple/Mac keyboard, like on a MacBook Pro, you would use shift+fn+UpArrow and shift+fn+DownArrow.


Question: how do i make my pc speaker beep

Response:
You could make Perl script, such as "<SomeCodeBefore> print "\007"; <SomeCodeAfter>".
Another approach is to try "echo -n Ctrl+V Ctrl+G", however, this will only work when the output device is a terminal.
On a terminal, pressing Ctrl+G and then Enter will produce a beep sound.
In addition, simply echoing "\a" or "\07" should trigger a beep.
The utility 'beep' offers various methods for achieving this, including writing an ASCII BEL (\007) character to standard output, opening "/dev/tty" and send the BEL character there, or using an X display command.
For Linux systems, tools like beep can use an "ioctl" on the console device to emit a given sound, more specifically, beep will use the "KIOCSOUND ioctl", but there is also a "KDMKTONE ioctl" which can be used to generate sound.
When traditional PC speakers aren't available, sounds can be played using commands like `paplay /usr/share/sounds/sound-icons/capital` on systems with sound chips and speakers.


Question: customise touch bar for a specific application

Response:
To set the function keys as the default display on your Touch Bar on an app-by-app basis,  go to Apple > System Preferences Select the Keyboard preference pane Click on the Shortcuts tab In the left sidebar, select the Function Keys option.
Alternatively, for more advanced customization of your Touch Bar, using the BetterTouchTool is necessary.
Additionally, you should look for the Customize Touch Bar element within the application's menus, which is often found in the View menu or deeper within the app's preferences.


Question: where does this concept of favor composition over inheritance come from?

Response: The concept of composition over inheritance was initially introduced in the "GoF design patterns book" that came out in 1994.


Question: why are people making tables with divs?

Response:
One compelling factor is that older versions of IE pose challenges when attempting to override default table styles and using divs provides a smoother experience in cross-browser development.
Additionally, table elements come with rendering limitations that do not apply to div elements.
The flexibility offered by CSS makes divs a preferred choice for modern JavaScript grids, allowing for more adaptable and controlled rendering of results.


Question: how to see process created by specific user in unix/linux

Response:
To view only the processes owned by a specific user, use the following command: top -U [username].

You can try: ps -fp $(pgrep -u <username>).


Question: how can i see my home folder in the finder?

Response:
To navigate to your home folder on a Mac, you can use the keyboard shortcut Shift+Command+H, while Command+UpArrow will take you up one folder level.
Additionally, the tilde symbol (~) combined with the Go to Folder shortcut serves to access the home folder, similar to other UNIX systems.
For a comprehensive guide, consult the document "Mac OS X keyboard shortcuts (HT1343)," which lists numerous shortcuts for OS X Lion.
You can also set your Finder preferences to open your home folder by default using the Command + , shortcut.
Your home folder is typically visible in the Finder sidebar, but if it's not, you can enable it in the Finder Preferences under the Sidebar tab or use the shortcuts View → Show Sidebar or ⌥⌘S to display the sidebar.
If you prefer using the Terminal app, simply run the command: open ~ to open your home folder.


Question: tdd vs. productivity

Response:
Despite the initial perception of slow progress, the elapsed time is probably going to be the same and the TDD software will be substantially better quality.
One opinion offers that, in their experience, time spent writing unit tests is more than saved in reduced debugging time for projects that are done using TDD from the beginning.
Debugging is almost eliminated when using TDD, thus enhancing the predictability and efficiency of the development process.
However, another opinion offers that it's uncertain if TDD will help in certain fields such as gaming, where the value of TDD is questionable due to the nature of the code and its testing difficulties.
Finally, it's important to remember that while TDD is good only only if you don't aim for for 100% test coverage, it may not always align with delivering business value and should be balanced with feature development.


Question: how can i set my default shell to start up tmux

Response:
There is command chsh which changes login shell, so consult man chsh, and make tmux your login shell, but don't forget to configure the default-shell setting for tmux first.

Start tmux on every shell login.

You can use case $- in *i*) [ -z "$TMUX" ] && exec tmux esac in my .zshrc; if you're using bash, put it in your .bashrc instead.

Run tmux [[ ! $TERM =~ screen ]] && [ -z $TMUX ] && tmux fi fi.

You can execute tmux part with: (exec tmux attach || exec tmux new-session).

Go to terminal preferences, and then click to "command" bar, check the "Run a custom command instead of my shell" and write whatever command you want to execute at the startup of your terminal.

Adding a line like [ -z "$TMUX" ] && { tmux attach || exec tmux new-session && exit;} in your bashrc file will probably do the job; note, you shouldn't wrap tmux attach with exec, as this would cause the connection to be closed when there are no tmux sessions to attach to.


Question: consequences of deleting .ds_store

Response:
Deleting .DS_Store files typically results in loss of folder display attributes, like icon positions, size, background color and view settings, but generally, nothing adverse occurs.
Should you remove a .DS_Store file from the Trash, Finder would no longer recognize the original location of deleted files.
Although Spotlight may still find comments associated with files, Finder would not if their .DS_Store file was removed.


Question: on-the-fly monitoring http requests on a network interface?

Response:
Wireshark is known to be a powerful tool capable of accomplishing the task at hand.
Another viable tool is nethogs, which has accessibility through core packages in Fedora and can be obtained via the EPEL repository for CentOS.


Question: what is the offical name of the third on-screen button?

Response:
This is a function commonly referred to as 'Recents' in the context of Android devices and is officially named "Overview".
It is also known by the term "Task Switcher or Recent Tasks".
The Overview function displays a collection of thumbnails representing apps and Chrome tabs that have been recently accessed; touching a thumbnail will open the respective app, and swiping a thumbnail left or right will remove it from the list.
For devices running on Android 4.4 or lower, the icon for the Overview function has a distinct appearance.


Question: what is popd in bash?

Response:
When using the popd command, you are essentially able to return to the last directory that was added to the stack and manipulate the directory stack.
For example, you can release the current directory from the directory stack or to delete it from the history of visited directories, either because you're done with it or for other reasons, using the popd command.
The popd command first switches you to the directory at the top of the stack then removes that directory from the stack documentation.


Question: is there any reason to use the var keyword in es6?

Response:
In JavaScript development, using 'var' might be necessary when you need a temp variable to be available within the scope of a block inside of a function.
However, 'var' may still find usage in edge cases such as machine-generated code, though such situations are quite rare.
However, it's essential to note that 'let' generally functions as expected and is the preferred option in most cases.


Question: what is the purpose of the lost+found folder in linux and unix?

Response:
The lost+found folder in Linux and Unix serves as a construct used by fsck when there is damage to the filesystem.
Files that would normally be lost due to directory corruption are linked in that filesystem's lost+found directory.
This directory provides a way for you to find files that were lost but were salvaged by the system repair process.


Question: what is the difference between authorized_keys and known_hosts file for ssh?

Response: The files "known_hosts" and "authorized_keys" possess subtle differences both in their format and how they are utilized.


Question: disable line wrapping for output in the terminal

Response:
To disable line wrapping for output in the Terminal, you have to pipe the output through less with the -S or --chop-long-lines option.
Alternatively, you can use the cut command, specifying the desired number of characters to display, for example, myscript | cut -c -100.


Question: what does the 1000m on a network switch mean?

Response: Those two ports only are capable of operating at Gigabit speed.


Question: attacking an office printer?

Response:
It is rare for a business need to keep a printer accessible outside the firewall AND the VPN, and it seems odd that you might have a case for it; it is an attack point and increases the attack surface of your network.

Since printers have a full-blown micro-controller in them, it is theoretically possible that just about any attack that could be done with a computer or open network jack on your network could also be done from the printer, but the risks can be managed by keeping them updated, turning off options that are insecure like http, and changing the admin passwords.

A better solution is to allow external support staff to only connect to a bastion host, and connect to the copier/device from there.


Question: why are programs written in c and c++ so frequently vulnerable to overflow attacks?

Response:
In C and C++, there is traditionally no overflow checking, which means if there's an attempt to write more data into a buffer than it can hold, the system will not prevent it.
Compared to Java software, exploiting software vulnerabilities is typically easier in C/C++ because these languages allow direct memory modification and do not include run-time checks to prevent buffer overruns.
C/C++ is idiosyncratic and sometimes described as similar to a macro assembler, which makes it suited for system-level programming but also risky if misused, such as writing beyond the bounds of an array.
However, the languages themselves are not inherently more vulnerable; rather, they provide the programmer with a high level of control and responsibility, which can lead to vulnerabilities if the programmer does not write safe code.
A significant amount of C code exists that performs unchecked writing to buffers.


Question: how to check if a port is blocked ubuntu?

Response:
To see if the service is on and is listening to the IP address or not, you can use: netstat -tuplen | grep 25.
To see if there is any rule set by your firewall, use: iptables -nL | grep <port number>/.


Question: how can usb sticks be dangerous?

Response:
Once connected to a computer, a device resembling a USB drive but functioning as a USB keyboard will begin executing predetermined key sequences.
Similar risks are associated with USB sticks that, upon insertion, exploit vulnerabilities without any additional user interaction, as highlighted by the Stuxnet virus incident.
While recent operating systems have disabled the autorun feature as a security measure, USB devices can still be reprogrammed to mimic keyboards, therefore harnessing the permissions of the user logged in to inject malware.
Exploits can also exist within the operating system's handling of USB drives even without direct file execution, as these can trick the OS into running code inadvertently.


Question: is apkmirror.com safe for downloads?

Response:
The site Apkmirror.com manually vets and approves all uploads to ensure app safety, and it restricts its collection to free applications, avoiding any illegal or 'cracked' versions.
Thusly, downloading from Apkmirror.com is generally safe.


Question: can i connect my airpods to a different case?

Response: Yes, it's possible to use multiple charging cases for AirPods.


Question: how many points are required to draw a rectangle?

Response:
To draw a rectangle, you need two points.
In two dimensions, storing a rectangle as two points is clearer, but a rectangle should be defined as three points to be well-defined in three dimensions.


Question: how to change the default behaviour of the fullscreen/maximize button?

Response:
You can download and use RightZoom, which overrides the green plus (zoom) button to provide a function that works like maximize in Windows.
Alternatively, Spectacle is a free open-source app that contains several useful window management shortcuts.
Note, while it doesn't change the default behavior of the green button, it does make it superfluous.
Another app, available on a 45-day free trail, is BetterTouchTool, which solves the issue via certain mouse commands.
Finally, if you don't want to use apps, you can assign a shortcut for the Zoom menu item from System Preferences.


Question: can i install any ios version i wish by picking and choosing which firmware to restore?

Response:
Typically, downgrading or upgrading to a version is not possible once Apple stops signing the old software, a process needed during iTunes restoration or installation.
 Putting a newer iOS on older hardware that never even supported that OS is near impossible.
However, a newer method, utilizing a tool called futurerestore, allows downgrading or upgrading without requiring current signing from Apple.
This approach is particularly useful for newer devices not covered in the initial list.


Question: easily unpack deb, edit postinst, and repack deb

Response:
The main tool to work with Debian packages is `dpkg-deb`.
To unpack the package, create a new directory, switch to it, and then use the command to extract its contents.
to rebuild the package, use command `dpkg-deb -b`.
It's important to run these operations with root permissions or use `fakeroot`  files' permissions and ownership will be corrupted at the extraction stage.
An alternative method is to use `fpm` along with the `--after-install` option to replace the postinst script of a Debian package.
Lastly, `7-Zip` can be utilized for a simple extraction of files from a `.deb` file since it supports unpacking "ar" files.


Question: where can i find stock or custom roms for my android device?

Response:
Stock ROMs for specific devices are typically posted in the General sub-forum of device-specific sections on XDA Developers' forums, while the Android Development sub-forum typically hosts custom ROMs for those devices.
RootzWiki is another resource that supports a lot of devices and provides tools for top developers.
For a variety of custom, stock, and leaked ROMs alongside kernels and how-to guides, you can refer to various online forums and websites.
A Vietnamese forum called Tinhte contains ROMs for Korean versions of devices from manufacturers such as LG, Samsung, and HTC.
BBS Gfan, a Chinese forum, has a vast collection of ROMs suitable for a wide selection of devices.
Additionally, NeedROM offers original and custom ROMs for over 65 brands, mainly Chinese, along with up-to-date tools.
MTK Firmware and Android MTK are also websites that focus on providing ROMs, tools, and drivers for MTK-based brands, again mostly Chinese.


Question: what does the broken pipe message mean in an ssh session?

Response:
It usually means that your network (TCP) connection was reset; possibly your server closes connections that are idle for too long.

Another cause for the "Broken Pipe message" is that another machine is attempting use the same IP as your host.

The main reason for connection failures is that you have to reach the server on a UDP port (default range: 60000-61000) for mosh to work, which will not be possible if the server is behind a firewall.


Question: how can i remove the bom from a utf-8 file?

Response: The tool "dos2unix" is capable of removing Byte Order Marks (BOMs) that don't align with UTF-8 encoding, often introduced accidentally by certain software on Microsoft operating systems.


Question: how to disable scroll acceleration in macos sierra?

Response:
USB Overdrive could be a potential solution to your problem, as it has been helpful for MacOS Sierra users facing similar issues.
Another method is adjusting the acceleration slider to "null" or "max" for the mouse wheel in the Logitech control center, which might be beneficial.
Disabling scrolling inertia via System Preferences > Accessibility > Mouse & Trackpad could also address your concern.
Furthermore, entering a specific command (Terminal: defaults write .GlobalPreferences com.apple.scrollwheel.scaling -1) to alter scroll wheel scaling and relogging is somewhat effective.
You can also write a small program to mitigate this behavior, which allows you to scroll in increments of three lines per wheel tick when running in the background.
macOS Sierra 10.12.2 public betas have removed the scroll wheel deadzone, and using a Terminal command can prevent scroll wheel acceleration in most applications.
Finally, use the Smooze app, which can be used free of charge to disable mouse acceleration.


Question: how do i open the context menu from a mac keyboard?

Response:
To emulate a right-click on a Mac, you have several options depending on your preferences and setup, and a common strategy is using various programs to map the right click onto various keys or combinations of keys: people have reported using Better Touch Tool to assign a custom gesture for right-click functions; using Alfred with RightClick workflow to trigger a right click on Option+CMD+Enter; using Shift+F10 (using the Fn key if needed) in Word 365 on Mojave; and using CLion to remap the right click to a hot key.
Alternatively, some users have created scripts to do this using AppleScript (available in Github) or Hammerspoon.
Still others have noted that the context menu, typically accessed by a right click, can be opened by using keyboard shortcuts such as Ctrl+5 or Fn+Ctrl+I if you have enabled Mouse Keys in the Universal Access settings, and that Mac OS X native features also allow you to map a "context click" to a specific key combination; some have also reported that Fn+Shift+F10 works for many windows on a Mac.
Some users have found workarounds through online resources like cnet, although these may require looking in different screen areas for commands.


Question: how do i send sms from pc through android phone or to android phone?

Response:
You can use Google Voice to send SMS messages in that manner.
An alternative is to use DesktopSMS, an application that syncs with a corresponding client on your computer to send texts.
Moreover, PDANet is a tethering program that enables SMS communication through a desktop client when connected via USB or Bluetooth, but its SMS agent feature is not included in the latest version as of May 2015.
Another solution, MightyText, is a Google Chrome extension coupled with an Android app that allows the composition, sending, and receiving of SMS within the Chrome browser, coordinating with your phone.
MyphoneExplorer is a desktop application that enables you to interact with SMS from your desktop once the phone is linked by USB, Bluetooth, or Wi-Fi.
Go SMS Pro offers a feature for texting via a web interface without the need for software installation, which is OS-agnostic and allows messaging from any computer.
MightyText also caters to users preferring to use their SMS plan rather than the data plan, providing a web-based application to manage messages.
Lastly, MAXS (Modular Android XMPP Suite) allows SMS messaging over XMPP and incorporates other control features for Android, with more functionality extended through an open-source project.


Question: how to store salt?

Response:
A salt is a random unique token stored with each password.
It is advised that salt can and should be stored right next to the salted and hashed password.
Additionally, the salt can be stored in plaintext without any form of obfuscation or encryption.
Another opinion offers that storing your salts separately offers some extra security but not much, since if the attacker has access to the database, chances are they have access to other data.
Still another opinion adds that the salt and password can be stored together because every random salt is different, as a salt is a random unique token stored with each password.


Question: how do you force a 5 ghz wifi connection?

Response:
In OS X 10.9 Mavericks it's not possible to force a frequency band without using additional tools or methods.
iStumbler can be used to give you an option to manually select the 5GHz signal.
Alternatively, you can set up a separate network name for this band and ensure that it's the closest signal to your access point.
Another approach to differentiate connections is to use the same SSID for both frequencies but assign different passwords for the 5GHz and 2.4GHz networks.
To make devices prefer the 5GHz signal automatically, increase its transmission power while reducing the 2.4GHz signal strength, though this could impact devices that only support 2.4GHz.
On OS X Mavericks, setting the channel number for the 5GHz band through the airport command can help "set" the preferred WiFi band.
Additionally, using Airtool to force your wireless interface to work on a specific 5GHz channel is another solution, effective on OS X 10.10.
In macOS Sierra 10.12.3, if networks share the same SSID, the channel for the 5GHz network can be set directly on the airport card.
Finally, one complicated option for controlling the network on 10.11.x is to first disable roaming and then physically penalize the 2.4 GHz signal with a mesh, for example made of chicken wire, to encourage connection to the 5 GHz band.


Question: what is the difference between delete from library and remove download?

Response: Remove downloads will leave the playlist in your library, but remove the music files associated with the songs, while Delete from Library will remove the playlist itself from your media library.


Question: how to play music from your iphone on your laptop?

Response:
The only way to play the music from your iPod or iPhone is to do this with iTunes itself by setting it to 'Manually manage music and videos' on your device; upgrade to iTunes 10 and you should be able to do this.

You could also find a DAAP server for iPhone, or Airfoil Speakers.

An alternative is to use your PC speakers simply as headphones for the iPhone, by plugging in a 3.5mm jack into the PC audio in (microphone) receptacle and run it to the iPhone headphones jack.


Question: how to ssh to remote server using a private key?

Response: The process of using ssh involves the -i option to incorporate your key.


Question: is an antivirus really needed for android?

Response:
Regarding antivirus usage on phones, it's suggested that running an antivirus is unnecessary.
Instead, focus on understanding app permissions during installation and being cautious about what permissions you grant.
Though not as crucial as on Windows, having antivirus software isn't a bad idea, even on systems like Android, as there have been instances of malicious apps.
In summary, sticking to downloading apps from the Google Play Store should allow you to avoid worrying about viruses on your Android device.


Question: is asus pptp vpn secure?

Response:
Yes, Asus PPTP VPN is secure.
PPTP VPN may be considered "practically secure"; however, using PPTP for company VPN would be a very bad idea.
From a theoretical point of view, it's broken.


Question: is there some ssh server for android?

Response:
For those who need an SSH server on their phones, there are several options such as SSHDroid, QuickSSHD, and Dropbear available, with some requiring no root access like SSHDroid and QuickSSHD.
Another method to utilize an SSH server is by initiating it via a command or configuration file instead of a frontend app.
Although some options like Dropbear in CyanogenMod releases may assume the server runs by root, adjustments can be made to allow operation without root access.


Question: how do i use pushd and popd commands?

Response:
The commands pushd and popd facilitate modification of the directory stack, allowing for a structured directory manipulation that maintains a history of visited directories.
These built-in shell commands, including dirs, enable users to switch between directories, ensuring a return to the original point of departure.
One can efficiently manage directory changes by utilizing pushd instead of cd, while popd is employed to reverse these changes, removing directories from the stack.
The functionality of these commands extends to creating shortcuts for frequent directory access within terminal environments, streamlining the process of moving between recently used directories.
These tools prove especially useful for navigating complex directory structures, where simple back-and-forth movements between locations are insufficient, offering greater flexibility and efficiency in directory management.


Question: app does not appear on iphone?

Response: Search with Spotlight, check for a new Home screen by swiping to the right, and check all your folders, and, if those don't work, try a hard reset.


Question: how to add characters to the press and hold character picker in os x lion?

Response: To add characters to the press and hold character picker in OS X Lion, you can create a custom .plist file tailored for Chinese Pinyin input.


Question: how do i repeat the last command without using the arrow keys?

Response:
You can use: Crtl-P, Ctrl-N, Ctrl+p, or, CTRL + P then CTRL + O.

With Magic space, you get to preview the command before it's run.

With any POSIX shell implementing the User Portability option (including ksh, zsh, bash, yash), you can also use the fc command: fc -e : -1.

With csh or any shell implementing csh-like history substitution (tcsh, bash, zsh), you can also use the !<beginning of command> to call the last command beginning with <beginning of command>.

To redo the previous command you can use: sudo !!

You can set up your shell to use vi command editing mode, by adding set -o vi to your shell startup file (e.g., ~/.bashrc).

Mac iterm2 users can bind ⌘+R to 0x0C 0x10 0x0d.

Too long, didn't read (tl;dr): !! just appends the last command to your current command, so <backtick>!!<backtick> executes the last command and appends the output to your current command.

The ksh shell has a default alias r that repeats the most recent command: alias r='fc -s', so typing r runs the last command.


Question: disable iphoto auto launch when connecting an iphone or ipad

Response: To disable iPhoto auto launch, Open application "Image capture", select your iPhone, press the triangle in square symbol in the lower left corner, then choose "No application" in the droplist under "Connecting this iPhone opens:".


Question: view stdout/stderr of systemd service

Response: To check the standard output and standard error of a systemd service unit, you can use the `sudo journalctl -u`.


Question: can a macs model year be determined with a terminal command?

Response:
Execute the command 'system_profiler SPHardwareDataType | grep "Model Identifier"' in Terminal.
Alternatively, for faster results, use 'sysctl hw.model'.
Once you have the model ID, you can input it online to get the launch month and year for your model.
To get your serial number, use the following command: system_profiler SPHardwareDataType | awk '/Serial/ {print $4}'.
If you're dealing with a Mac, the correct marketing name and model year can be discerned from a plist file on El Capitan and Sierra, containing a dictionary of information for each model identifier.
In contrast, for a 2019 MacBook Pro, 'system_profiler SPHardwareDataType' provides accurate results, distinguishing it from the previous year's model.


Question: how to move a window to another space without using the mouse?

Response:
While dragging a window, press a key combo to move it to a numbered space: "Control + 1, Control + 2, Control + 3, etc".
You can also explore third-party tools like SizeUp, which provides additional features for window management.
Amethyst is another option that allows you to send windows to specific spaces using configurable keyboard shortcuts.  BetterTouchTool is a free tool that not only facilitates window movement but also offers additional functionalities; it can be used in combination with ShiftIt for window resizing.
Additionally, yabai is a window management utility designed to work as an extension to the built-in window manager of macOS.


Question: can cctv footage be edited?

Response: It is possible for anyone with complete physical access to a security system to edit any recorded footage.


Question: how do i get detailed smart disk information on os x (mavericks or later)

Response:
One option for obtaining SMART disk information on OS X is to install smartmontools then run it "smartctl -a disk0s3" for the full report to get a full report on the disk’s status, with "disk0s3" being the identifier for the physical disk obtained from Disk Utility or the command line.
Alternatively, smartmontools can also be installed using MacPorts with the command "sudo port install smartmontools".
Another option is GSmartControl, a GUI available that runs on top of smartmontools.
You can also download a native precompiled package from https://sourceforge.net/projects/smartmontools/ for users with MacOS Sierra, Yosemite, or El Capitan, which can be run from the Terminal.
For macOS 10.15 (Catalina) or later, it’s important to note that the behavior and output of smartctl 7.1 can vary depending on the SSD type.


Question: what is the difference between curl and wget?

Response:
One of the key strengths of wget over curl is its capability to download content recursively.
Wget is a command-line tool without an accompanying library.
In contrast, curl can run across more platforms than wget can.
Wget operates under the GNU GPL, which is a copyleft license, whereas curl is under a permissive license similar to MIT.
Curl also differs from wget in functionality, as it allows for file downloads and provides upload and a wide variety of other capabilities.
The included library with curl, libcurl, is heavily used by other software, making curl versatile beyond being a standalone tool.
Wget is specifically tailored to download files from servers, whereas curl is designed to exchange a variety of requests and responses with a server.
Primarily, wget is limited to HTTP/HTTPS and FTP for file downloads, whereas curl supports an extensive range of protocols for debugging and testing different server configurations.
Test results indicate that curl is generally faster in downloading files than wget and has a smaller command size on the system.


Question: what do you do when code review is just too hard?

Response:
One should tackle the more significant underlying issues to address the difficulties associated with code review.
This involves handling the absence of a unit test suite, intricate code merges, and a basic lack of architecture that may be causing code reviews to be challenging.
Moreover, dividing the changelist into various smaller changelists for separate reviews can significantly streamline the process.
If a particular changelist does not seem satisfactory upon review, it should be rejected.


Question: have backticks (i.e. `cmd`) in *sh shells been deprecated?

Response:
Backticks are not technically "deprecated" because they are still supported, even though they have been superseded.

The backticks (`...`) are the legacy syntax required by only the very oldest of non-POSIX-compatible bourne-shells and $(...) is POSIX and preferred, so avoid backticks unless you specifically require compatibility with an original non-POSIX Bourne shell.


Question: forking a repo on github but allowing new issues on the fork

Response:
One opinion advises that it is possible to attach an issue to your own fork of a repository by navigating to the settings page of your fork, and enabling the issues feature.
In contrast, pushing a local Git repository to GitHub as a completely new repository is also an option, although this would sever connection with any issue tracking history.


Question: how to get the chrome tabs to always show when in full screen mode?

Response:
To enter full screen mode that displays tabs, use Control-Command+F.
There is some disagreement about what Shift+Command+F does in this context, with some saying it will enter full screen mode and some saying it is for presentation mode.


Question: what vlan does cdp use?

Response: In regards to the behavior of CDP packets on network devices, it has been observed that CDP always chooses the lowest VLAN to send CDP packets.


Question: is wpa and wpa2 the same?

Response: Apparently, WPA was the original WPA standard, and WPA2 is an improved version of it; the advanced protocol will not work with some older network cards.


Question: linux: how can i view all uuids for all available disks on my system?

Response:
A tool known as blkid should be used as root or with sudo for disk identification.
To view drive's UUID mappings to their entries in /dev, one can use the command ls -lha /dev/disk/by-uuid.  Similarly, ls -la /dev/disk/by-uuid offers the same functionality for checking UUID listings.
When dealing with multiple devices or identical UUIDs, sudo blkid /dev/sd* provides a more tailored approach.
For a comprehensive overview of devices and partitions, including mounting and tree structure, the lsblk -f command is recommended.
For scripting purposes or when a specific disk device's UUID is required, the command sudo blkid -s UUID -o value /dev/sdXY should be employed.
The lsblk command along with the -o +uuid,name output shows all device information and additional outputs can be found using lsblk --help, or simply blkid can be utilized.


Question: merging folders with mv?

Response:
Files can be merged into a directory by using the command 'mv folder/* directory/folder/ rmdir folder', provided no files share the same name in both 'folder' and 'directory/folder'.
To renames the files instead of copying them and then deleting them, use `cd source; find -type f -print0 | xargs -0 -n 1 -I {} mv '{}' 'dest/{}'`.
It is suggested to use 'mv with find' for a one-pass solution that covers both files and directories, using complex find command syntax to handle file movement and directory creation.


Question: is your ssh password revealed when you attempt to connect to the wrong server?

Response: When using password authentication, the password is transmitted in plaintext to the remote server after an encrypted connection has been established.


Question: how to use find command to search for multiple extensions

Response:
When searching for files in Linux, you can combine criteria using the -o flag, which requires the use of parentheses for proper precedence in the command structure.
A command like "find .-iregex '.*\.\(jpg\|gif\|png\|jpeg\)$'" is suggested as a more correct approach to locating image files with various extensions.
For Linux, Unix, and macOS systems, the command "find -E .-regex '.*\.(jpg|png)'" is identified as the only option that performs reliably.


Question: are launchers safe for android?

Response:
When using any app, it is crucial to scrutinize the permissions it requests to determine if they are justifiable for its functionality.
Custom launchers are typically safe to use, but caution is advised if they ask for unnecessary permissions that could indicate hidden malicious features.
Most launchers are generally harmless and act as a skin for the phone, without affecting your personal data upon uninstallation.


Question: why vlan range is 4096?

Response:
For VLANs within the 802.1q standard, only 12 bits are allocated for VLANs.
From the VLAN tagging perspective, the VLAN Identifier (VID) uses these 12 bits, which corresponds to the 2^12 possible combinations leading to the maximum of 4,096.


Question: why cant the it industry deliver large, faultless projects quickly as in other industries?

Response:
In general, the software industry faces challenges due to a lack of standardization and work item breakdown.
One significant obstacle impacting performance and productivity is bureaucracy, which is guaranteed to hinder progress.
Additionally, the failures in the IT industry are often attributed to its immaturity, the absence of detailed standards, and the lack of standardized components and modules.


Question: is charging my iphone all night harmful?

Response:
It is not harmful to leave a modern phone charging overnight.
Modern phones have mechanisms that prevent them from overcharging once the battery is full.
Still, removing protective cases that retain heat might be better to avoid overheating.
Nightly charging, typical behavior for many users, does not tend to harm battery life with current technology, particularly lithium-ion batteries.
However, long-term habits of overnight charging could potentially shorten a battery's lifespan.


Question: can git be used locally?

Response: Yes, it is entirely reasonable and possible to use Git locally.


Question: is rsync installed by default?

Response: Although Rsync is a fast and versatile copying tool, it's often not installed on systems by default.


Question: whats the difference between entry level/jr/sr developers?

Response:
Job titles such as entry-level, junior, and senior in programming rely highly on the specific company's policies and job role expectations.
For example, an entry-level programmer is seen as a beginner needing clear guidance and frequent checks on their work, while junior-level needs less explicit instructions, less checking, and a senior is held responsible for major project segments, expected to work independently, often giving little or no instructions.
Over their career progression, developers transition from being closely supervised to mentoring others and making crucial technical decisions.
The classification into these levels can be affected by many factors, including the amount of time spent in the profession, making experience a significant determining factor.


Question: where can i find the unicode symbols for mac functional keys? (command, shift, etc.)

Response:
CharacterPal is a widget that allows you to view symbol codes and copy them to your clipboard with a click.
TextExpander is another useful tool that, for $45, lets you import a snippet group full of various symbols and shortcuts, including ones for keyboard commands and other sets like currency icons and miscellaneous symbols.


Question: where should a local executable be placed?

Response:
For non-system binaries that need to be available to multiple users, an administrator should place them in /usr/local/bin.
This allows the binary to be accessible system-wide.
If you're the only user, then $HOME/bin is suitable.


Question: can i export functions in bash?

Response:
Functions are not exported to subprocesses, but you can create a "library" which is loaded when you start the program: source "$HOME/lib/somefile", and place your non-interactive functions and settings there.

In Bash you can export function definitions to a sub-shell with export -f function_name.

If you use declare -pf it will output all the previously defined functions in the current shell to STDOUT, and you can then redirect STDOUT to wherever you want.

The command eval "$(declare -F | sed -e 's/-f /-fx /')" will export all functions.


Question: how to redirect output to a file from within cron?

Response:
There are two ways: change the redirection from &>> to 2>&1; change the default shell by adding SHELL=/bin/bash in the crontab -e file.

Make sure your shell redirection syntax conforms to /bin/sh.


Question: did i just get dns hijacked?

Response:
It is obvious that modifications were made to the DNS settings of your router, likely with the use of default credentials.
To address this issue, it is recommended to reset the router to its factory settings, update the firmware to the latest version, change the default login information, and ensure that remote access to the router is disabled.
The primary DNS entry of your router was redirected to a malicious DNS server, causing devices on your network to resolve legitimate domains like apple.com to phishing sites.
The compromise likely stemmed from the Asus AC87U router's outdated firmware, enabling a DNS hijacking attack, emphasizing the urgency of timely updates and secure password management for router interfaces.


Question: is it common to allow local desktop and/or active directory admin access and rights for developers in organizations?

Response:
Yes and no: in a large firm developers are one of the groups that were approved for local admin access; with smaller companies, people always had local admin rights.

Most commonly, developers have admin access to their own machines, and in some organizations, it's common to give developers complete control over their development workstation, to the point of enabling them to install their own OS on it, while in some organizations, all development must be done in an airgapped environment, where no electronic devices can be taken into or out of.

For larger organizations, it is absolutely not common for developers to have full rights to anything other than development specific resources, although others say the only choice is to have one choice, give developers effective admin access.

A cynical view is that allowing and disallowing local admin access is common, and it is only typical to have local admin access denied to devs in companies where either the devs are so useless/malicious they abuse those privileges, or where the "IT and Security" department is run by clueless knee-jerk idiots who view everyone not in their inner circle as an obvious security threat out to make them look bad.


Question: apples open letter - they cant or wont backdoor ios?

Response:
In certain cases involving specific hardware, it has been stated that manipulating the device's firmware is feasible.
A data forensics company called Cellebrite has reportedly developed the ability to unlock and access data on various iPhone models, hinting at the existence of a vulnerability they can exploit.
The notion that this manipulation may be actionable has some support, indicated by Apple's own implications in their statements, although they acknowledge the security risks of fulfilling such requests.
There is suspicion over whether Apple will comply with creating a system that bypasses security features due to potential risks and their apparent objection to such demands.
Apple has a financial motive in portraying the iPhone as unhackable even by the FBI, and may also be attempting to capitalize on anti-government views.
The FBI's request has been described not as seeking a "backdoor" but rather an interface to exploit an existing vulnerability, with Apple's refusal to comply not eliminating the underlying security issue.


Question: what is the difference between programming and computer science?

Response:
Computer science is the theory of programming or the study of what computers can do.
On the other hand, Programming is the implementation of computer science or the practice of making computers do what they can.
If programming is carpentry, then computer science is architecture/design.


Question: trying to sort on two fields, second then first

Response:
With GNU sort you do it like this: sort -k2,2 -k1 <people.txt.

To sort by a single column, use -k2,2 as the key specification; this means to use the fields from #2 to #2, that is, only the second field (sort -k2 -k3 <people.txt is redundant).


Question: can an app window be minimized by clicking its dock icon?

Response:
Right-click the icon and select "Hide," or use key combinations like Command H to bring the window to the front.
Minimizing can be achieved by double-clicking the title bar or using the Command M keyboard shortcut.
There is no direct method to minimize windows by clicking on the Dock, but you can configure settings in the System Preferences to enable window minimization by double-clicking the window's title bar.
In OS X, applications and windows are treated separately, allowing for window-specific actions like minimization using the yellow ball but not application minimization.
To hide an application, you can click and hold the icon in the Dock and select hide or alt-click the icon in the Dock.
Be aware that hiding an application via ALT-click or CMD-H will conceal all its windows.
To see an application's open windows, right-click the app in the Dock.
If you're looking for functionality similar to Windows, third-party tools like HyperDock might offer some solutions.


Question: macbook pro bluetooth audio balance keeps changing by itself

Response: You can use Balance Lock which will keep your audio centered and prevent left/right drift.


Question: what is the page size in linux?

Response:
Most architectures, including Linux, typically support a 4kB page size as a default.
On some architectures, this default page size can be different, with Linux supporting values like 16kB for ARM64 or 8kB, 16kB, or 64kB for IA64.
Additionally, the operating system can allocate more than one page at a time if needed, and thus implement 8kB, 16kB, or 32kB.


Question: why jsp is used instead of servlet?

Response: The main advantage of JSP is that it's easier to code and read when you are creating a dynamic HTML front-end.


Question: is it better to return null or empty values from functions/methods where the return value is not present?

Response:
The Null Object pattern is advised to keep code clean by avoiding checks for null references in method calls.
For example, it is better to return an empty collection or a Null object rather than null, thus removing the need for a user to check if the reference is null.
Additionally, if returning null is necessary, providing a method to indicate the presence of an object can simplify the caller's code.
This approach to coding helps keep the code less cluttered and easier to read.


Question: how does windows 10 allow microsoft to spy on you?

Response:
In the context of Microsoft's software and services, it is documented that Microsoft collects extensive information about users' activities and device information.
Specifically, for members of the Windows Insider program, participation implies consent to the transmission of usage details and other data.
The features from previous Windows versions are still available, including the SmartScreen filter that verifies URLs by sending them to Microsoft.
The presence of Cortana as part of Windows 10 means that a considerable amount of activity and personal information, including location, browsing history, and voice input, may be communicated back to Microsoft.
It's also highlighted that Microsoft reserves the right to gather nearly anything from users, especially those in the open beta, although the extent of collection and usage may be tempered by privacy laws applicable in different regions.
Cortana is the main issue in Windows 10, while Office 365 offers additional features like Power BI for data collection and visualization and OneDrive Documents for saving.
Operating system makers, including Microsoft with Windows 10, have the potential to "forget" fixing security vulnerabilities, allowing third parties to exploit them and gain unauthorized access to user data.


Question: what is difference between man and help command?

Response: "Help" is a Bash built-in command designed to provide assistance specifically for Bash commands, whereas "man" (manual) is a conventional way to get help for nearly all system commands and, occasionally, configuration files.


Question: is post or get more secure?

Response: POST is more secure than GET.


Question: what are the primary differences between netcat and ncat?

Response: Ncat is described as the netcat version developed by the Nmap Project and a significantly improved version of the classic Netcat program.


Question: install shuf on os x?

Response:
To install coreutils on a Mac, you have two options: using brew or Xcode Macports.
With brew, after installation, shuf is accessible with the command gshuf.
Alternatively, when installing with Macports, the GNU core utilities will be available in /opt/local/bin with a 'g' prefixed to their names, such as gshuf.


Question: what does it mean when someone keeps digital touch message from you?

Response: Selecting the keep option will not remove items from the conversation; rather it's just a way to save space.


Question: why is mercurial considered to be easier than git?

Response:
Mercurial's syntax is considered more familiar, especially for those accustomed to SVN, and is well documented.
It focuses on interface aspects, which initially makes learning easier than Git.
In the defaults set by Mercurial, user-friendliness is a noticeable trait.
Additionally, the branching model and history editing features in Mercurial are framed as easy to follow.
Mercurial can accomplish tasks requiring multiple commands in Git with just one command.
Mercurial's simplicity extends to its lack of an index, which contrasts with Git's powerful but complex system, and it uses revision numbers instead of shas, making daily commands easier.
Users often find Mercurial the more approachable tool, attributing it to features such as its different branching model and basic usability.
Learning and extending Mercurial with Python is also feasible due to its simplicity.
Compared to Git, Mercurial is characterized by a more user-friendly culture and interfaces, such as the standardized TortoiseHg GUI, whereas Git's command-line-centric approach can deter new users.
Mercurial's relative ease becomes apparent as it lets users grasp its functionalities within minutes.


Question: can a vlan have multiple subnets?

Response:
You can, but generally having one subnet per VLAN is preferred because it simplifies documentation and troubleshooting.
However, there are real-world scenarios where running two subnets on one VLAN can be advantageous, such as saving time and reducing the wiring costs in a multiple-office environment.


Question: ive inherited 200k lines of spaghetti code -- what now?

Response:
When dealing with such a task, the initial focus should be on modularization.
Identify points in the codebase where you can establish somewhat independent segments, and consider generating a dependency graph to visualize the intricate interconnections.
While some may advocate for immediate refactoring, understanding the system thoroughly and prioritizing your objectives is crucial.
Be patient and systematic in the approach and ensure a version control system (SVN, Git, Mercurial, TFS, etc.) is in place before delving into any code modifications.
Once the version control system is implemented, focus on training your team.
Additionally, consider automating testing to streamline the development process.
Engage domain experts in showcasing the advantages of revision control, emphasizing the ability to revert changes and track modifications.
Encourage their involvement in creating end-to-end tests for continuous integration.
Lastly, before deciding what practices to teach, conduct a thorough analysis to identify and prioritize the most significant pain points.


Question: is there a way to get the min, max, median, and average of a list of numbers in a single command?

Response:
The R programming language can be used to perform statistical analysis with ease, providing means to calculate minimum, maximum, median, and mean values from a dataset.
Simple-r, which operates within the R environment, works as a solution to simplify statistical analysis.
Additionally, pythonpy is an effective tool for such statistical computations.
Lastly, GNU datamash works well for its ability to calculate maximum, minimum, mean, and median values.


Question: why is 4096 the max value for vlans

Response: Only 12 bits are used for VLANs in 802.1q, so you can only use VLANs from 0-4095 (=4096* different VLANs).


Question: change location of macos notification center alerts?

Response: It is not currently possible to adjust the screen location of the Notification Center Alerts and Banners.


Question: why shouldnt i use the repository pattern with entity framework?

Response:
Modern frameworks generally manage the encapsulation of database connection logic, making it more readily available for reuse.
The Entity Framework can be used with the Repository pattern, which serves as an abstraction layer over various data access methods.
Conversely, utilizing the Repository pattern may lead to losing out on the ability to perform rich queries and maintain semantic relationships.
Entity Framework itself is seen as a powerful framework that provides coding and functional advantages, making the application of an additional repository pattern potentially redundant and negating some of the benefits of Entity Framework.
It's worth noting that Entity Framework already implements a repository pattern.
Additionally, combining the repository pattern with Entity Framework is not recommended because it renders the testing useless.


Question: is there a way to easily record a phone conversation in-progress?

Response:
Google Voice allows you to record incoming phone calls only.
Supporting this, another method involves using a Voice Recorder app while on a speakerphone, which may capture both sides of the communication.
For a more refined solution, the Ultimate Voice Recorder app can be employed, effectively recording both ends of a conversation.
Additionally, Tasker is an application capable of automatically recording phone calls to an SD card.