Programs & Examples On #Efv4

File Explorer in Android Studio

I am in Android 3.6.1, and the way " Top Menu > View > Tools Window > Device File Manager" doesn't work.Because there is no the "Device File Manager" option in Tools Window.

But I resolve the problem with another way:

1?Find the magnifier icon on the top right toobar. enter image description here

2?Click it and search "device" in the search bar, and you can see it. enter image description here

What is the difference between 'typedef' and 'using' in C++11?

They are equivalent, from the standard (emphasis mine) (7.1.3.2):

A typedef-name can also be introduced by an alias-declaration. The identifier following the using keyword becomes a typedef-name and the optional attribute-specifier-seq following the identifier appertains to that typedef-name. It has the same semantics as if it were introduced by the typedef specifier. In particular, it does not define a new type and it shall not appear in the type-id.

How to get a random value from dictionary?

I found this post by looking for a rather comparable solution. For picking multiple elements out of a dict, this can be used:

idx_picks = np.random.choice(len(d), num_of_picks, replace=False) #(Don't pick the same element twice)
result = dict ()
c_keys = [d.keys()] #not so efficient - unfortunately .keys() returns a non-indexable object because dicts are unordered
for i in idx_picks:
    result[c_keys[i]] = d[i]

How to convert a Java String to an ASCII byte array?

In my string I have Thai characters (TIS620 encoded) and German umlauts. The answer from agiles put me on the right path. Instead of .getBytes() I use now

  int len = mString.length(); // Length of the string
  byte[] dataset = new byte[len];
  for (int i = 0; i < len; ++i) {
     char c = mString.charAt(i);
     dataset[i]= (byte) c;
  }

error code 1292 incorrect date value mysql

I was having the same issue in Workbench plus insert query from C# application. In my case using ISO format solve the issue

string value = date.ToString("yyyy-MM-dd HH:mm:ss");

How to split a String by space

you can saperate string using the below code

   String thisString="Hello world";

   String[] parts = theString.split(" ");

   String first = parts[0];//"hello"

    String second = parts[1];//"World"

How to extract or unpack an .ab file (Android Backup file)

I have had to unpack a .ab-file, too and found this post while looking for an answer. My suggested solution is Android Backup Extractor, a free Java tool for Windows, Linux and Mac OS.

Make sure to take a look at the README, if you encounter a problem. You might have to download further files, if your .ab-file is password-protected.

Usage:
java -jar abe.jar [-debug] [-useenv=yourenv] unpack <backup.ab> <backup.tar> [password]

Example:

Let's say, you've got a file test.ab, which is not password-protected, you're using Windows and want the resulting .tar-Archive to be called test.tar. Then your command should be:

java.exe -jar abe.jar unpack test.ab test.tar ""

Generating random number between 1 and 10 in Bash Shell Script

Simplest solution would be to use tool which allows you to directly specify ranges, like shuf

shuf -i1-10 -n1

If you want to use $RANDOM, it would be more precise to throw out the last 8 numbers in 0...32767, and just treat it as 0...32759, since taking 0...32767 mod 10 you get the following distribution

0-8 each: 3277 
8-9 each: 3276

So, slightly slower but more precise would be

while :; do ran=$RANDOM; ((ran < 32760)) && echo $(((ran%10)+1)) && break; done 

How to get an absolute file path in Python

if you are on a mac

import os
upload_folder = os.path.abspath("static/img/users")

this will give you a full path:

print(upload_folder)

will show the following path:

>>>/Users/myUsername/PycharmProjects/OBS/static/img/user

How can I edit a .jar file?

A jar file is a zip archive. You can extract it using 7zip (a great simple tool to open archives). You can also change its extension to zip and use whatever to unzip the file.

Now you have your class file. There is no easy way to edit class file, because class files are binaries (you won't find source code in there. maybe some strings, but not java code). To edit your class file you can use a tool like classeditor.

You have all the strings your class is using hard-coded in the class file. So if the only thing you would like to change is some strings you can do it without using classeditor.

Check OS version in Swift?

let osVersion = NSProcessInfo.processInfo().operatingSystemVersion
let versionString = osVersion.majorVersion.description + "." + osVersion.minorVersion.description + "." + osVersion.patchVersion.description
print(versionString)

Start new Activity and finish current one in Android?

Use finish like this:

Intent i = new Intent(Main_Menu.this, NextActivity.class);
finish();  //Kill the activity from which you will go to next activity 
startActivity(i);

FLAG_ACTIVITY_NO_HISTORY you can use in case for the activity you want to finish. For exampe you are going from A-->B--C. You want to finish activity B when you go from B-->C so when you go from A-->B you can use this flag. When you go to some other activity this activity will be automatically finished.

To learn more on using Intent.FLAG_ACTIVITY_NO_HISTORY read: http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_NO_HISTORY

Simple IEnumerator use (with example)

Also you can use LINQ's Select Method:

var source = new[] { "Line 1", "Line 2" };

var result = source.Select(s => s + " roxxors");

Read more here Enumerable.Select Method

How to Free Inode Usage?

Many answers to this one so far and all of the above seem concrete. I think you'll be safe by using stat as you go along, but OS depending, you may get some inode errors creep up on you. So implementing your own stat call functionality using 64bit to avoid any overflow issues seems fairly compatible.

How to save a figure in MATLAB from the command line?

If you want to save it as .fig file, hgsave is the function in Matlab R2012a. In later versions, savefig may also work.

java- reset list iterator to first element of the list

You can call listIterator method again to get an instance of iterator pointing at beginning of list:

iter = list.listIterator();

How to set index.html as root file in Nginx?

location / { is the most general location (with location {). It will match anything, AFAIU. I doubt that it would be useful to have location / { index index.html; } because of a lot of duplicate content for every subdirectory of your site.

The approach with

try_files $uri $uri/index.html index.html;

is bad, as mentioned in a comment above, because it returns index.html for pages which should not exist on your site (any possible $uri will end up in that). Also, as mentioned in an answer above, there is an internal redirect in the last argument of try_files.

Your approach

location = / {
   index index.html;

is also bad, since index makes an internal redirect too. In case you want that, you should be able to handle that in a specific location. Create e.g.

location = /index.html {

as was proposed here. But then you will have a working link http://example.org/index.html, which may be not desired. Another variant, which I use, is:

root /www/my-root;

# http://example.org
# = means exact location
location = / {
    try_files /index.html =404;
}

# disable http://example.org/index as a duplicate content
location = /index      { return 404; }

# This is a general location. 
# (e.g. http://example.org/contacts <- contacts.html)
location / {
    # use fastcgi or whatever you need here
    # return 404 if doesn't exist
    try_files $uri.html =404;
}

P.S. It's extremely easy to debug nginx (if your binary allows that). Just add into the server { block:

error_log /var/log/nginx/debug.log debug;

and see there all internal redirects etc.

jQuery Determine if a matched class has a given id

Just to say I eventually solved this using index().

NOTHING else seemed to work.

So for sibling elements this is a good work around if you are first selecting by a common class and then want to modify something differently for each specific one.

EDIT: for those who don't know (like me) index() gives an index value for each element that matches the selector, counting from 0, depending on their order in the DOM. As long as you know how many elements there are with class="foo" you don't need an id.

Obviously this won't always help, but someone might find it useful.

powershell - list local users and their groups

Update as an alternative to the excellent answer from 2010:

You can now use the Get-LocalGroupMember, Get-LocalGroup, Get-LocalUser etc. to get and map users and groups

Example:

PS C:\WINDOWS\system32> Get-LocalGroupMember -name users

ObjectClass Name                             PrincipalSource 
----------- ----                             --------------- 
User        DESKTOP-R05QDNL\someUser1        Local           
User        DESKTOP-R05QDNL\someUser2        MicrosoftAccount
Group       NT AUTHORITY\INTERACTIVE         Unknown  

You could combine that with Get-LocalUser. Alias glu can also be used instead. Aliases exists for the majority of the new cmndlets.

In case some are wondering (I know you didn't ask about this) Adding users could be for example done like so:

$description = "Netshare user"
$userName = "Test User"
$user = "test.user"
$pwd = "pwd123"

New-LocalUser $user -Password (ConvertTo-SecureString $pwd -AsPlainText -Force) -FullName $userName -Description $description

Why does cURL return error "(23) Failed writing body"?

I encountered this error message while trying to install varnish cache on ubuntu. The google search landed me here for the error (23) Failed writing body, hence posting a solution that worked for me.

The bug is encountered while running the command as root curl -L https://packagecloud.io/varnishcache/varnish5/gpgkey | apt-key add -

the solution is to run apt-key add as non root

curl -L https://packagecloud.io/varnishcache/varnish5/gpgkey | apt-key add -

Java - Check Not Null/Empty else assign default value

Use Java 8 Optional (no filter needed):

public static String orElse(String defaultValue) {
  return Optional.ofNullable(System.getProperty("property")).orElse(defaultValue);
}

Android Studio: Plugin with id 'android-library' not found

Add the below to the build.gradle project module:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

On duplicate key ignore?

Mysql has this handy UPDATE INTO command ;)

edit Looks like they renamed it to REPLACE

REPLACE works exactly like INSERT, except that if an old row in the table has the same value as a new row for a PRIMARY KEY or a UNIQUE index, the old row is deleted before the new row is inserted

Modify the legend of pandas bar plot

If you need to call plot multiply times, you can also use the "label" argument:

ax = df1.plot(label='df1', y='y_var')
ax = df2.plot(label='df2', y='y_var')

While this is not the case in the OP question, this can be helpful if the DataFrame is in long format and you use groupby before plotting.

MongoDB: How to query for records where field is null or not set?

Use:

db.emails.count({sent_at: null})

Which counts all emails whose sent_at property is null or is not set. The above query is same as below.

db.emails.count($or: [
  {sent_at: {$exists: false}},
  {sent_at: null}
])

Escaping ampersand in URL

You can rather pass your arguments using this encodeURIComponent function so you don't have to worry about passing any special characters.

data: "param1=getAccNos&param2="+encodeURIComponent('Dolce & Gabbana') OR
var someValue = 'Dolce & Gabbana';
data : "param1=getAccNos&param2="+encodeURIComponent(someValue)

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent

How to set a Javascript object values dynamically?

You can get the property the same way as you set it.

foo = {
 bar: "value"
}

You set the value foo["bar"] = "baz";

To get the value foo["bar"]

will return "baz".

What is the best way to implement a "timer"?

Use the Timer class.

public static void Main()
{
    System.Timers.Timer aTimer = new System.Timers.Timer();
    aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
    aTimer.Interval = 5000;
    aTimer.Enabled = true;

    Console.WriteLine("Press \'q\' to quit the sample.");
    while(Console.Read() != 'q');
}

 // Specify what you want to happen when the Elapsed event is raised.
 private static void OnTimedEvent(object source, ElapsedEventArgs e)
 {
     Console.WriteLine("Hello World!");
 }

The Elapsed event will be raised every X amount of milliseconds, specified by the Interval property on the Timer object. It will call the Event Handler method you specify. In the example above, it is OnTimedEvent.

Issue with parsing the content from json file with Jackson & message- JsonMappingException -Cannot deserialize as out of START_ARRAY token

As said, JsonMappingException: out of START_ARRAY token exception is thrown by Jackson object mapper as it's expecting an Object {} whereas it found an Array [{}] in response.

A simpler solution could be replacing the method getLocations with:

public static List<Location> getLocations(InputStream inputStream) {
    ObjectMapper objectMapper = new ObjectMapper();
    try {
        TypeReference<List<Location>> typeReference = new TypeReference<>() {};
        return objectMapper.readValue(inputStream, typeReference);
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}

On the other hand, if you don't have a pojo like Location, you could use:

TypeReference<List<Map<String, Object>>> typeReference = new TypeReference<>() {};
return objectMapper.readValue(inputStream, typeReference);

Wireshark vs Firebug vs Fiddler - pros and cons?

None of the above, if you are on a Mac. Use Charles Proxy. It's the best network/request information collecter that I have ever come across. You can view and edit all outgoing requests, and see the responses from those requests in several forms, depending on the type of the response. It costs 50 dollars for a license, but you can download the trial version and see what you think.

If your on Windows, then I would just stay with Fiddler.

Google Gson - deserialize list<class> object? (generic type)

Another way is to use an array as a type, e.g.:

MyClass[] mcArray = gson.fromJson(jsonString, MyClass[].class);

This way you avoid all the hassle with the Type object, and if you really need a list you can always convert the array to a list by:

List<MyClass> mcList = Arrays.asList(mcArray);

IMHO this is much more readable.

And to make it be an actual list (that can be modified, see limitations of Arrays.asList()) then just do the following:

List<MyClass> mcList = new ArrayList<>(Arrays.asList(mcArray));

Bytes of a string in Java

A string is a list of characters (i.e. code points). The number of bytes taken to represent the string depends entirely on which encoding you use to turn it into bytes.

That said, you can turn the string into a byte array and then look at its size as follows:

// The input string for this test
final String string = "Hello World";

// Check length, in characters
System.out.println(string.length()); // prints "11"

// Check encoded sizes
final byte[] utf8Bytes = string.getBytes("UTF-8");
System.out.println(utf8Bytes.length); // prints "11"

final byte[] utf16Bytes= string.getBytes("UTF-16");
System.out.println(utf16Bytes.length); // prints "24"

final byte[] utf32Bytes = string.getBytes("UTF-32");
System.out.println(utf32Bytes.length); // prints "44"

final byte[] isoBytes = string.getBytes("ISO-8859-1");
System.out.println(isoBytes.length); // prints "11"

final byte[] winBytes = string.getBytes("CP1252");
System.out.println(winBytes.length); // prints "11"

So you see, even a simple "ASCII" string can have different number of bytes in its representation, depending which encoding is used. Use whichever character set you're interested in for your case, as the argument to getBytes(). And don't fall into the trap of assuming that UTF-8 represents every character as a single byte, as that's not true either:

final String interesting = "\uF93D\uF936\uF949\uF942"; // Chinese ideograms

// Check length, in characters
System.out.println(interesting.length()); // prints "4"

// Check encoded sizes
final byte[] utf8Bytes = interesting.getBytes("UTF-8");
System.out.println(utf8Bytes.length); // prints "12"

final byte[] utf16Bytes= interesting.getBytes("UTF-16");
System.out.println(utf16Bytes.length); // prints "10"

final byte[] utf32Bytes = interesting.getBytes("UTF-32");
System.out.println(utf32Bytes.length); // prints "16"

final byte[] isoBytes = interesting.getBytes("ISO-8859-1");
System.out.println(isoBytes.length); // prints "4" (probably encoded "????")

final byte[] winBytes = interesting.getBytes("CP1252");
System.out.println(winBytes.length); // prints "4" (probably encoded "????")

(Note that if you don't provide a character set argument, the platform's default character set is used. This might be useful in some contexts, but in general you should avoid depending on defaults, and always use an explicit character set when encoding/decoding is required.)

Auto increment in MongoDB to store sequence of Unique User ID

I know this is an old question, but I shall post my answer for posterity...

It depends on the system that you are building and the particular business rules in place.

I am building a moderate to large scale CRM in MongoDb, C# (Backend API), and Angular (Frontend web app) and found ObjectId utterly terrible for use in Angular Routing for selecting particular entities. Same with API Controller routing.

The suggestion above worked perfectly for my project.

db.contacts.insert({
 "id":db.contacts.find().Count()+1,
 "name":"John Doe",
 "emails":[
    "[email protected]",
    "[email protected]"
 ],
 "phone":"555111322",
 "status":"Active"
});

The reason it is perfect for my case, but not all cases is that as the above comment states, if you delete 3 records from the collection, you will get collisions.

My business rules state that due to our in house SLA's, we are not allowed to delete correspondence data or clients records for longer than the potential lifespan of the application I'm writing, and therefor, I simply mark records with an enum "Status" which is either "Active" or "Deleted". You can delete something from the UI, and it will say "Contact has been deleted" but all the application has done is change the status of the contact to "Deleted" and when the app calls the respository for a list of contacts, I filter out deleted records before pushing the data to the client app.

Therefore, db.collection.find().count() + 1 is a perfect solution for me...

It won't work for everyone, but if you will not be deleting data, it works fine.

Rotate image with javascript

CSS can be applied and you will have to set transform-origin correctly to get the applied transformation in the way you want

See the fiddle:

http://jsfiddle.net/OMS_/gkrsz/

Main code:

/* assuming that the image's height is 70px */

img.rotated {
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);

    transform-origin: 35px 35px;
    -webkit-transform-origin: 35px 35px;
    -moz-transform-origin: 35px 35px;
    -ms-transform-origin: 35px 35px;
}

jQuery and JS:

$(img)
    .css('transform-origin-x', imgWidth / 2)
    .css('transform-origin-y', imgHeight / 2);

// By calculating the height and width of the image in the load function

// $(img).css('transform-origin', (imgWidth / 2) + ' ' + (imgHeight / 2) );

Logic:

Divide the image's height by 2. The transform-x and transform-y values should be this value

Link:

transform-origin at CSS | MDN

How do I get the full path of the current file's directory?

If you just want to see the current working directory

import os
print(os.getcwd())

If you want to change the current working directory

os.chdir(path)

path is a string containing the required path to be moved. e.g.

path = "C:\\Users\\xyz\\Desktop\\move here"

How to write log base(2) in c/c++

All the above answers are correct. This answer of mine below can be helpful if someone needs it. I have seen this requirement in many questions which we are solving using C.

log2 (x) = logy (x) / logy (2)

However, if you are using C language and you want the result in integer, you can use the following:

int result = (int)(floor(log(x) / log(2))) + 1;

Hope this helps.

WPF button click in C# code

I don't think WPF supports what you are trying to achieve i.e. assigning method to a button using method's name or btn1.Click = "btn1_Click". You will have to use approach suggested in above answers i.e. register button click event with appropriate method btn1.Click += btn1_Click;

How can I clear console

You can use the operating system's clear console method via system("");
for windows it would be system("cls"); for example
and instead of releasing three different codes for different operating systems. just make a method to get what os is running.
you can do this by detecting if unique system variables exist with #ifdef
e.g.

enum OPERATINGSYSTEM = {windows = 0, mac = 1, linux = 2 /*etc you get the point*/};

void getOs(){
    #ifdef _WIN32
        return OPERATINGSYSTEM.windows
    #elif __APPLE__ //etc you get the point

    #endif
}

int main(){
    int id = getOs();
    if(id == OPERATINGSYSTEM.windows){
        system("CLS");
    }else if (id == OPERATINGSYSTEM.mac){
        system("CLEAR");
    } //etc you get the point

}

sudo: port: command not found

You can quite simply add the line:

source ~/.profile

To the bottom of your shell rc file - if you are using bash then it would be your ~/.bash_profile if you are using zsh it would be your ~/.zshrc

Then open a new Terminal window and type ports -v you should see output that looks like the following:

~ [ port -v                                                                                                              ] 12:12 pm
MacPorts 2.1.3
Entering interactive mode... ("help" for help, "quit" to quit)
[Users/sh] > quit
Goodbye

Hope that helps.

How to make an "alias" for a long path?

First, you need the $ to access "myFold"'s value to make the code in the question work:

cd "$myFold"

To simplify this you create an alias in ~/.bashrc:

alias cdmain='cd ~/Files/Scripts/Main'

Don't forget to source the .bashrc once to make the alias become available in the current bash session:

source ~/.bashrc

Now you can change to the folder using:

cdmain

Checkboxes in web pages – how to make them bigger?

Here's a trick that works in most recent browsers (IE9+) as a CSS only solution that can be improved with javascript to support IE8 and below.

<div>
  <input type="checkbox" id="checkboxID" name="checkboxName" value="whatever" />
  <label for="checkboxID"> </label>
</div>

Style the label with what you want the checkbox to look like

#checkboxID
{
  position: absolute fixed;
  margin-right: 2000px;
  right: 100%;
}
#checkboxID + label
{
  /* unchecked state */
}
#checkboxID:checked + label
{
  /* checked state */
}

For javascript, you'll be able to add classes to the label to show the state. Also, it would be wise to use the following function:

$('label[for]').live('click', function(e){
  $('#' + $(this).attr('for') ).click();
  return false;
});

EDIT to modify #checkboxID styles

How to remove last n characters from a string in Bash?

I tried the following and it worked for me:

#! /bin/bash

var="hello.c"
length=${#var}
endindex=$(expr $length - 4)
echo ${var:0:$endindex}

Output: hel

Does C# have an equivalent to JavaScript's encodeURIComponent()?

You can use the Server object in the System.Web namespace

Server.UrlEncode, Server.UrlDecode, Server.HtmlEncode, and Server.HtmlDecode.

Edit: poster added that this was a windows application and not a web one as one would believe. The items listed above would be available from the HttpUtility class inside System.Web which must be added as a reference to the project.

How to convert DateTime to VarChar

You can use DATEPART(DATEPART, VARIABLE). For example:

DECLARE @DAY INT 
DECLARE @MONTH INT
DECLARE @YEAR INT
DECLARE @DATE DATETIME
@DATE = GETDATE()
SELECT @DAY = DATEPART(DAY,@DATE)
SELECT @MONTH = DATEPART(MONTH,@DATE)
SELECT @YEAR = DATEPART(YEAR,@DATE)

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder"

I added this dependency to resolve this issue:

https://mvnrepository.com/artifact/org.slf4j/slf4j-simple/1.7.25

Peak-finding algorithm for Python/SciPy

Detecting peaks in a spectrum in a reliable way has been studied quite a bit, for example all the work on sinusoidal modelling for music/audio signals in the 80ies. Look for "Sinusoidal Modeling" in the literature.

If your signals are as clean as the example, a simple "give me something with an amplitude higher than N neighbours" should work reasonably well. If you have noisy signals, a simple but effective way is to look at your peaks in time, to track them: you then detect spectral lines instead of spectral peaks. IOW, you compute the FFT on a sliding window of your signal, to get a set of spectrum in time (also called spectrogram). You then look at the evolution of the spectral peak in time (i.e. in consecutive windows).

Ternary operator in AngularJS templates

Update: Angular 1.1.5 added a ternary operator, this answer is correct only to versions preceding 1.1.5. For 1.1.5 and later, see the currently accepted answer.

Before Angular 1.1.5:

The form of a ternary in angularjs is:

((condition) && (answer if true) || (answer if false))

An example would be:

<ul class="nav">
    <li>
        <a   href="#/page1" style="{{$location.path()=='/page2' && 'color:#fff;' || 'color:#000;'}}">Goals</a>
    </li>
    <li>
        <a   href="#/page2" style="{{$location.path()=='/page2' && 'color:#fff;' || 'color:#000;'}}">Groups</a>
    </li>
</ul>

or:

 <li  ng-disabled="currentPage == 0" ng-click="currentPage=0"  class="{{(currentPage == 0) && 'disabled' || ''}}"><a> << </a></li>

Angular2 Error: There is no directive with "exportAs" set to "ngForm"

In my case I had to add FormsModule and ReactiveFormsModule to the shared.module.ts too:

(thanks to @Undrium for the code example):

import { NgModule }                                 from '@angular/core';
import { CommonModule }                             from '@angular/common';
import { FormsModule, ReactiveFormsModule }         from '@angular/forms';

@NgModule({
  imports:      [
    CommonModule,
    ReactiveFormsModule
  ],
  declarations: [],
  exports: [
    CommonModule,
    FormsModule,
    ReactiveFormsModule
  ]
})
export class SharedModule { }

How can I check if mysql is installed on ubuntu?

With this command:

 dpkg -s mysql-server | grep Status

How to save image in database using C#

This is a method that uses a FileUpload control in asp.net:

byte[] buffer = new byte[fu.FileContent.Length];
Stream s = fu.FileContent;
s.Read(buffer, 0, buffer.Length);
//Then save 'buffer' to the varbinary column in your db where you want to store the image.

How to create a circle icon button in Flutter?

Try out this Card

Card(
    elevation: 10,
    shape: RoundedRectangleBorder(
      borderRadius: BorderRadius.circular(25.0), // half of height and width of Image
      ),
    child: Image.asset(
      "assets/images/home.png",
      width: 50,
      height: 50,
    ),
  )

SQL Server Configuration Manager not found

For SQL Server 2017 it is : C:\Windows\SysWOW64\SQLServerManager14.msc

For SQL Server 2016 it is : C:\Windows\SysWOW64\SQLServerManager13.msc

For SQL Server 2016 it is :C:\Windows\SysWOW64\SQLServerManager12.msc

and to add it back to the start menu, copy it from the original location provided above and paste it to

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server 2017\Configuration Tools\

This would put back the configuration manager under start menu.

Source: How to open sql server configuration manager in windows 10?

delete map[key] in go?

From Effective Go:

To delete a map entry, use the delete built-in function, whose arguments are the map and the key to be deleted. It's safe to do this even if the key is already absent from the map.

delete(timeZone, "PDT")  // Now on Standard Time

How to save .xlsx data to file as a blob

I had the same problem as you. It turns out you need to convert the Excel data file to an ArrayBuffer.

var blob = new Blob([s2ab(atob(data))], {
    type: ''
});

href = URL.createObjectURL(blob);

The s2ab (string to array buffer) method (which I got from https://github.com/SheetJS/js-xlsx/blob/master/README.md) is:

function s2ab(s) {
  var buf = new ArrayBuffer(s.length);
  var view = new Uint8Array(buf);
  for (var i=0; i!=s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
  return buf;
}

java.lang.NoClassDefFoundError in junit

I was following this video: https://www.youtube.com/watch?v=WHPPQGOyy_Y but failed to run the test. After that, I deleted all the downloaded files and add the Junit using the step in the picture.

enter image description here

Cannot find java. Please use the --jdkhome switch

ATTENTION MAC OS USERS


First, please remember that in a Mac computer the netbeans.conf file is stored at

/Applications/NetBeans/NetBeans 8.2.app/Contents/Resources/NetBeans/etc/netbeans.conf

(if you had used the default installation package.)

Then, also remember that the directory you MUST use on either "netbeans_jdkhome" or "--jdkhome" it's NOT the /Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/ but the following one:

/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home //<-- Please, notice the /Contents/Home at the end. That's the "trick"!

Note: of course, you must change the versions for both NetBeans and JDK you're using.

Using PowerShell credentials without being prompted for a password

The problem with Get-Credential is that it will always prompt for a password. There is a way around this however but it involves storing the password as a secure string on the filesystem.

The following article explains how this works:

Using PSCredentials without a prompt

In summary, you create a file to store your password (as an encrypted string). The following line will prompt for a password then store it in c:\mysecurestring.txt as an encrypted string. You only need to do this once:

read-host -assecurestring | convertfrom-securestring | out-file C:\mysecurestring.txt

Wherever you see a -Credential argument on a PowerShell command then it means you can pass a PSCredential. So in your case:

$username = "domain01\admin01"
$password = Get-Content 'C:\mysecurestring.txt' | ConvertTo-SecureString
$cred = new-object -typename System.Management.Automation.PSCredential `
         -argumentlist $username, $password

$serverNameOrIp = "192.168.1.1"
Restart-Computer -ComputerName $serverNameOrIp `
                 -Authentication default `
                 -Credential $cred
                 <any other parameters relevant to you>

You may need a different -Authentication switch value because I don't know your environment.

How do I make a Windows batch script completely silent?

You can redirect stdout to nul to hide it.

COPY %scriptDirectory%test.bat %scriptDirectory%test2.bat >nul

Just add >nul to the commands you want to hide the output from.

Here you can see all the different ways of redirecting the std streams.

StringBuilder vs String concatenation in toString() in Java

Can I point out that if you're going to iterate over a collection and use StringBuilder, you may want to check out Apache Commons Lang and StringUtils.join() (in different flavours) ?

Regardless of performance, it'll save you having to create StringBuilders and for loops for what seems like the millionth time.

How to get table list in database, using MS SQL 2008?

Answering the question in your title, you can query sys.tables or sys.objects where type = 'U' to check for the existence of a table. You can also use OBJECT_ID('table_name', 'U'). If it returns a non-null value then the table exists:

IF (OBJECT_ID('dbo.My_Table', 'U') IS NULL)
BEGIN
    CREATE TABLE dbo.My_Table (...)
END

You can do the same for databases with DB_ID():

IF (DB_ID('My_Database') IS NULL)
BEGIN
    CREATE DATABASE My_Database
END

If you want to create the database and then start using it, that needs to be done in separate batches. I don't know the specifics of your case, but there shouldn't be many cases where this isn't possible. In a SQL script you can use GO statements. In an application it's easy enough to send across a new command after the database is created.

The only place that you might have an issue is if you were trying to do this in a stored procedure and creating databases on the fly like that is usually a bad idea.

If you really need to do this in one batch, you can get around the issue by using EXEC to get around the parsing error of the database not existing:

CREATE DATABASE Test_DB2

IF (OBJECT_ID('Test_DB2.dbo.My_Table', 'U') IS NULL)
BEGIN
    EXEC('CREATE TABLE Test_DB2.dbo.My_Table (my_id INT)')
END

EDIT: As others have suggested, the INFORMATION_SCHEMA.TABLES system view is probably preferable since it is supposedly a standard going forward and possibly between RDBMSs.

Doctrine and LIKE query

This is not possible with the magic find methods. Try using the query builder:

$result = $em->getRepository("Orders")->createQueryBuilder('o')
   ->where('o.OrderEmail = :email')
   ->andWhere('o.Product LIKE :product')
   ->setParameter('email', '[email protected]')
   ->setParameter('product', 'My Products%')
   ->getQuery()
   ->getResult();

How to output in CLI during execution of PHP Unit tests?

It is possible to use Symfony\Component\Console\Output\TrimmedBufferOutput and then test the buffered output string like this:

use Symfony\Component\Console\Output\TrimmedBufferOutput;

//...
public function testSomething()
{
   $output = new TrimmedBufferOutput(999);
   $output->writeln('Do something in your code with the output class...');
   
   //test the output:
   $this->assertStringContainsString('expected string...', $output->fetch());   
}

How to split a string with angularJS

You could try this:

$scope.testdata = [{ 'name': 'name,id' }, {'name':'someName,someId'}]
$scope.array= [];
angular.forEach($scope.testdata, function (value, key) {
    $scope.array.push({ 'name': value.name.split(',')[0], 'id': value.name.split(',')[1] });
});
console.log($scope.array)

This way you can save the data for later use and acces it by using an ng-repeat like this:

<div ng-repeat="item in array">{{item.name}}{{item.id}}</div>


I hope this helped someone,
Plunker link: here
All credits go to @jwpfox and @Mohideen ibn Mohammed from the answer above.

Non-recursive depth first search algorithm

Stack<Node> stack = new Stack<>();
stack.add(root);
while (!stack.isEmpty()) {
    Node node = stack.pop();
    System.out.print(node.getData() + " ");

    Node right = node.getRight();
    if (right != null) {
        stack.push(right);
    }

    Node left = node.getLeft();
    if (left != null) {
        stack.push(left);
    }
}

Difference between checkout and export in SVN

As you stated, a checkout includes the .svn directories. Thus it is a working copy and will have the proper information to make commits back (if you have permission). If you do an export you are just taking a copy of the current state of the repository and will not have any way to commit back any changes.

Force IE10 to run in IE10 Compatibility View?

I had the exact same problem, this - "meta http-equiv="X-UA-Compatible" content="IE=7">" works great in IE8 and IE9, but not in IE10. There is a bug in the server browser definition files that shipped with .NET 2.0 and .NET 4, namely that they contain definitions for a certain range of browser versions. But the versions for some browsers (like IE 10) aren't within those ranges any more. Therefore, ASP.NET sees them as unknown browsers and defaults to a down-level definition, which has certain inconveniences, like that it does not support features like JavaScript.

My thanks to Scott Hanselman for this fix.

Here is the link -

http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx

This MS KP fix just adds missing files to the asp.net on your server. I installed it and rebooted my server and it now works perfectly. I would have thought that MS would have given this fix a wider distribution.

Rick

Detecting a redirect in ajax request?

Welcome to the future!

Right now we have a "responseURL" property from xhr object. YAY!

See How to get response url in XMLHttpRequest?

However, jQuery (at least 1.7.1) doesn't give an access to XMLHttpRequest object directly. You can use something like this:

var xhr;
var _orgAjax = jQuery.ajaxSettings.xhr;
jQuery.ajaxSettings.xhr = function () {
  xhr = _orgAjax();
  return xhr;
};

jQuery.ajax('http://test.com', {
  success: function(responseText) {
    console.log('responseURL:', xhr.responseURL, 'responseText:', responseText);
  }
});

It's not a clean solution and i suppose jQuery team will make something for responseURL in the future releases.

TIP: just compare original URL with responseUrl. If it's equal then no redirect was given. If it's "undefined" then responseUrl is probably not supported. However as Nick Garvey said, AJAX request never has the opportunity to NOT follow the redirect but you may resolve a number of tasks by using responseUrl property.

How to do a SOAP Web Service call from Java class?

I understand your problem boils down to how to call a SOAP (JAX-WS) web service from Java and get its returning object. In that case, you have two possible approaches:

  1. Generate the Java classes through wsimport and use them; or
  2. Create a SOAP client that:
    1. Serializes the service's parameters to XML;
    2. Calls the web method through HTTP manipulation; and
    3. Parse the returning XML response back into an object.


About the first approach (using wsimport):

I see you already have the services' (entities or other) business classes, and it's a fact that the wsimport generates a whole new set of classes (that are somehow duplicates of the classes you already have).

I'm afraid, though, in this scenario, you can only either:

  • Adapt (edit) the wsimport generated code to make it use your business classes (this is difficult and somehow not worth it - bear in mind everytime the WSDL changes, you'll have to regenerate and readapt the code); or
  • Give up and use the wsimport generated classes. (In this solution, you business code could "use" the generated classes as a service from another architectural layer.)

About the second approach (create your custom SOAP client):

In order to implement the second approach, you'll have to:

  1. Make the call:
    • Use the SAAJ (SOAP with Attachments API for Java) framework (see below, it's shipped with Java SE 1.6 or above) to make the calls; or
    • You can also do it through java.net.HttpUrlconnection (and some java.io handling).
  2. Turn the objects into and back from XML:
    • Use an OXM (Object to XML Mapping) framework such as JAXB to serialize/deserialize the XML from/into objects
    • Or, if you must, manually create/parse the XML (this can be the best solution if the received object is only a little bit differente from the sent one).

Creating a SOAP client using classic java.net.HttpUrlConnection is not that hard (but not that simple either), and you can find in this link a very good starting code.

I recommend you use the SAAJ framework:

SOAP with Attachments API for Java (SAAJ) is mainly used for dealing directly with SOAP Request/Response messages which happens behind the scenes in any Web Service API. It allows the developers to directly send and receive soap messages instead of using JAX-WS.

See below a working example (run it!) of a SOAP web service call using SAAJ. It calls this web service.

import javax.xml.soap.*;

public class SOAPClientSAAJ {

    // SAAJ - SOAP Client Testing
    public static void main(String args[]) {
        /*
            The example below requests from the Web Service at:
             https://www.w3schools.com/xml/tempconvert.asmx?op=CelsiusToFahrenheit


            To call other WS, change the parameters below, which are:
             - the SOAP Endpoint URL (that is, where the service is responding from)
             - the SOAP Action

            Also change the contents of the method createSoapEnvelope() in this class. It constructs
             the inner part of the SOAP envelope that is actually sent.
         */
        String soapEndpointUrl = "https://www.w3schools.com/xml/tempconvert.asmx";
        String soapAction = "https://www.w3schools.com/xml/CelsiusToFahrenheit";

        callSoapWebService(soapEndpointUrl, soapAction);
    }

    private static void createSoapEnvelope(SOAPMessage soapMessage) throws SOAPException {
        SOAPPart soapPart = soapMessage.getSOAPPart();

        String myNamespace = "myNamespace";
        String myNamespaceURI = "https://www.w3schools.com/xml/";

        // SOAP Envelope
        SOAPEnvelope envelope = soapPart.getEnvelope();
        envelope.addNamespaceDeclaration(myNamespace, myNamespaceURI);

            /*
            Constructed SOAP Request Message:
            <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:myNamespace="https://www.w3schools.com/xml/">
                <SOAP-ENV:Header/>
                <SOAP-ENV:Body>
                    <myNamespace:CelsiusToFahrenheit>
                        <myNamespace:Celsius>100</myNamespace:Celsius>
                    </myNamespace:CelsiusToFahrenheit>
                </SOAP-ENV:Body>
            </SOAP-ENV:Envelope>
            */

        // SOAP Body
        SOAPBody soapBody = envelope.getBody();
        SOAPElement soapBodyElem = soapBody.addChildElement("CelsiusToFahrenheit", myNamespace);
        SOAPElement soapBodyElem1 = soapBodyElem.addChildElement("Celsius", myNamespace);
        soapBodyElem1.addTextNode("100");
    }

    private static void callSoapWebService(String soapEndpointUrl, String soapAction) {
        try {
            // Create SOAP Connection
            SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory.newInstance();
            SOAPConnection soapConnection = soapConnectionFactory.createConnection();

            // Send SOAP Message to SOAP Server
            SOAPMessage soapResponse = soapConnection.call(createSOAPRequest(soapAction), soapEndpointUrl);

            // Print the SOAP Response
            System.out.println("Response SOAP Message:");
            soapResponse.writeTo(System.out);
            System.out.println();

            soapConnection.close();
        } catch (Exception e) {
            System.err.println("\nError occurred while sending SOAP Request to Server!\nMake sure you have the correct endpoint URL and SOAPAction!\n");
            e.printStackTrace();
        }
    }

    private static SOAPMessage createSOAPRequest(String soapAction) throws Exception {
        MessageFactory messageFactory = MessageFactory.newInstance();
        SOAPMessage soapMessage = messageFactory.createMessage();

        createSoapEnvelope(soapMessage);

        MimeHeaders headers = soapMessage.getMimeHeaders();
        headers.addHeader("SOAPAction", soapAction);

        soapMessage.saveChanges();

        /* Print the request message, just for debugging purposes */
        System.out.println("Request SOAP Message:");
        soapMessage.writeTo(System.out);
        System.out.println("\n");

        return soapMessage;
    }

}

About using JAXB for serializing/deserializing, it is very easy to find information about it. You can start here: http://www.mkyong.com/java/jaxb-hello-world-example/.

Updating a JSON object using Javascript

    var jsonObj = [{'Id':'1','Quantity':'2','Done':'0','state':'todo',
        'product_id':[315,"[LBI-W-SL-3-AG-TA004-C650-36] LAURA BONELLI-WOMEN'S-SANDAL"],
        'Username':'Ray','FatherName':'Thompson'},  
          {'Id':'2','Quantity':'2','Done':'0','state':'todo',
          'product_id':[314,"[LBI-W-SL-3-AG-TA004-C650-36] LAURA BONELLI-WOMEN'S-SANDAL"],
          'Username':'Steve','FatherName':'Johnson'},
          {'Id':'3','Quantity':'2','Done':'0','state':'todo',
          'product_id':[316,"[LBI-W-SL-3-AG-TA004-C650-36] LAURA BONELLI-WOMEN'S-SANDAL"],
          'Username':'Albert','FatherName':'Einstein'}];

          for (var i = 0; i < jsonObj.length; ++i) {
            if (jsonObj[i]['product_id'][0] === 314) {


                this.onemorecartonsamenumber();


                jsonObj[i]['Done'] = ""+this.quantity_done+"";

                if(jsonObj[i]['Quantity'] === jsonObj[i]['Done']){
                  console.log('both are equal');
                  jsonObj[i]['state'] = 'packed';
                }else{
                  console.log('not equal');
                  jsonObj[i]['state'] = 'todo';
                }

                console.log('quantiy',jsonObj[i]['Quantity']);
                console.log('done',jsonObj[i]['Done']);


            }
        }

        console.log('final',jsonObj);
}

quantity_done: any = 0;

  onemorecartonsamenumber() {
    this.quantity_done += 1;
    console.log(this.quantity_done + 1);
  }

Python: convert string from UTF-8 to Latin-1

If the previous answers do not solve your problem, check the source of the data that won't print/convert properly.

In my case, I was using json.load on data incorrectly read from file by not using the encoding="utf-8". Trying to de-/encode the resulting string to latin-1 just does not help...

How do I set specific environment variables when debugging in Visual Studio?

Set up a batch file which you can invoke. Pass the path the batch file, and have the batch file set the environment variable and then invoke NUnit.

Converting a factor to numeric without losing information R (as.numeric() doesn't seem to work)

First, factor consists of indices and levels. This fact is very very important when you are struggling with factor.

For example,

> z <- factor(letters[c(3, 2, 3, 4)])

# human-friendly display, but internal structure is invisible
> z
[1] c b c d
Levels: b c d

# internal structure of factor
> unclass(z)
[1] 2 1 2 3
attr(,"levels")
[1] "b" "c" "d"

here, z has 4 elements.
The index is 2, 1, 2, 3 in that order.
The level is associated with each index: 1 -> b, 2 -> c, 3 -> d.

Then, as.numeric converts simply the index part of factor into numeric.
as.character handles the index and levels, and generates character vector expressed by its level.

?as.numeric says that Factors are handled by the default method.

How to copy a row from one SQL Server table to another

SELECT * INTO < new_table > FROM < existing_table > WHERE < clause >

How to correctly assign a new string value?

The first example doesn't work because you can't assign values to arrays - arrays work (sort of) like const pointers in this respect. What you can do though is copy a new value into the array:

strcpy(p.name, "Jane");

Char arrays are fine to use if you know the maximum size of the string in advance, e.g. in the first example you are 100% sure that the name will fit into 19 characters (not 20 because one character is always needed to store the terminating zero value).

Conversely, pointers are better if you don't know the possible maximum size of your string, and/or you want to optimize your memory usage, e.g. avoid reserving 512 characters for the name "John". However, with pointers you need to dynamically allocate the buffer they point to, and free it when not needed anymore, to avoid memory leaks.

Update: example of dynamically allocated buffers (using the struct definition in your 2nd example):

char* firstName = "Johnnie";
char* surname = "B. Goode";
person p;

p.name = malloc(strlen(firstName) + 1);
p.surname = malloc(strlen(surname) + 1);

p.age = 25;
strcpy(p.name, firstName);
strcpy(p.surname, surname);

printf("Name: %s; Age: %d\n",p.name,p.age);

free(p.surname);
free(p.name);

Return value using String result=Command.ExecuteScalar() error occurs when result returns null

Value is not null, but DBNull.Value.

object value = cmd.ExecuteScalar();
if(value == DBNull.Value)

No function matches the given name and argument types

That error means that a function call is only matched by an existing function if all its arguments are of the same type and passed in same order. So if the next f() function

create function f() returns integer as $$ 
    select 1;
$$ language sql;

is called as

select f(1);

It will error out with

ERROR:  function f(integer) does not exist
LINE 1: select f(1);
               ^
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.

because there is no f() function that takes an integer as argument.

So you need to carefully compare what you are passing to the function to what it is expecting. That long list of table columns looks like bad design.

How can I compare two lists in python and return matches

Do you want duplicates? If not maybe you should use sets instead:

>>> set([1, 2, 3, 4, 5]).intersection(set([9, 8, 7, 6, 5]))
set([5])

NSDictionary - Need to check whether dictionary contains key-value pair or not

With literal syntax you can check as follows

static const NSString* kKeyToCheck = @"yourKey"
if (xyz[kKeyToCheck])
  NSLog(@"Key: %@, has Value: %@", kKeyToCheck, xyz[kKeyToCheck]);
else
 NSLog(@"Key pair do not exits for key: %@", kKeyToCheck); 

JavaScript: Check if mouse button down?

You need to handle the MouseDown and MouseUp and set some flag or something to track it "later down the road"... :(

What's the best practice to round a float to 2 decimals?

Here is a simple one-line solution

((int) ((value + 0.005f) * 100)) / 100f

mysql - move rows from one table to another

BEGIN;
INSERT INTO persons_table select * from customer_table where person_name = 'tom';
DELETE FROM customer_table where person_name = 'tom';
COMMIT;

Does the join order matter in SQL?

for regular Joins, it doesn't. TableA join TableB will produce the same execution plan as TableB join TableA (so your C and D examples would be the same)

for left and right joins it does. TableA left Join TableB is different than TableB left Join TableA, BUT its the same than TableB right Join TableA

Generate an HTML Response in a Java Servlet

Apart of directly writing HTML on the PrintWriter obtained from the response (which is the standard way of outputting HTML from a Servlet), you can also include an HTML fragment contained in an external file by using a RequestDispatcher:

public void doGet(HttpServletRequest request,
       HttpServletResponse response)
       throws IOException, ServletException {
   response.setContentType("text/html");
   PrintWriter out = response.getWriter();
   out.println("HTML from an external file:");     
   request.getRequestDispatcher("/pathToFile/fragment.html")
          .include(request, response); 
   out.close();
}

Adding elements to a C# array

You should take a look at the List object. Lists tend to be better at changing dynamically like you want. Arrays not so much...

How to pass a parameter like title, summary and image in a Facebook sharer URL

It seems that the only parameter that allows you to inject custom text is the "quote".

https://www.facebook.com/sharer/sharer.php?u=THE_URL&quote=THE_CUSTOM_TEXT

Delete specific line from a text file?

No rocket scien code require .Hope this simple and short code will help.

List linesList = File.ReadAllLines("myFile.txt").ToList();            
linesList.RemoveAt(0);
File.WriteAllLines("myFile.txt"), linesList.ToArray());

OR use this

public void DeleteLinesFromFile(string strLineToDelete)
    {
        string strFilePath = "Provide the path of the text file";
        string strSearchText = strLineToDelete;
        string strOldText;
        string n = "";
        StreamReader sr = File.OpenText(strFilePath);
        while ((strOldText = sr.ReadLine()) != null)
        {
            if (!strOldText.Contains(strSearchText))
            {
                n += strOldText + Environment.NewLine;
            }
        }
        sr.Close();
        File.WriteAllText(strFilePath, n);
    }

How to split a string into an array of characters in Python?

If you wish to read only access to the string you can use array notation directly.

Python 2.7.6 (default, Mar 22 2014, 22:59:38) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> t = 'my string'
>>> t[1]
'y'

Could be useful for testing without using regexp. Does the string contain an ending newline?

>>> t[-1] == '\n'
False
>>> t = 'my string\n'
>>> t[-1] == '\n'
True

Back to previous page with header( "Location: " ); in PHP

Just a little addition: I believe it's a common and known thing to add exit; after the header function in case we don't want the rest of the code to load or execute...

header('Location: ' . $_SERVER['HTTP_REFERER']);
exit;

How to downgrade php from 5.5 to 5.3

I did this in my local environment. Wasn't difficult but obviously it was done in "unsupported" way.

To do the downgrade you need just to download php 5.3 from http://php.net/releases/ (zip archive), than go to xampp folder and copy subfolder "php" to e.g. php5.5 (just for backup). Than remove content of the folder php and unzip content of zip archive downloaded from php.net. The next step is to adjust configuration (php.ini) - you can refer to your backed-up version from php 5.5. After that just run xampp control utility - everything should work (at least worked in my local environment). I didn't found any problem with such installation, although I didn't tested this too intensively.

Displaying a webcam feed using OpenCV and Python

If you only have one camera, or you don't care which camera is the correct one, then use "-1" as the index. Ie for your example capture = cv.CaptureFromCAM(-1).

libstdc++.so.6: cannot open shared object file: No such file or directory

I presume you're running Linux on an amd64 machine. The Folder your executable is residing in (lib32) suggests a 32-bit executable which requires 32-bit libraries.

These seem not to be present on your system, so you need to install them manually. The package name depends on your distribution, for Debian it's ia32-libs, for Fedora libstdc++.<version>.i686.

Use chrome as browser in C#?

I don't know of any full Chrome component, but you could use WebKit, which is the rendering engine that Chrome uses. The Mono project made WebKit Sharp, which might work for you.

Android global variable

Use SharedPreferences to store and retrieve global variables.

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
String userid = preferences.getString("userid", null);

Hot deploy on JBoss - how do I make JBoss "see" the change?

Hot deployment is stable only for changes on static parts of the application (jsf, xhtml, etc.).

Here is a working solution, according to JBoss AS 7.1.1.Final:

  • Build your project.
  • Navigate to [JBOSS_HOME]/standalone/tmp/vfs.
  • Open the most recently modified folder named "deployment[some_alphanumeric_values]", i.e. "deployment344b1c870c8edbd".
  • Navigate to the specific view that you want to edit (usually, this is included into the packaged .war folder) and open it with a text editor (i.e. Notepad++).
  • Make the changes you want and save the file.
  • Refresh the respective page on your browser. The changes should be visible now.
  • When finished, don't forget to copy these changes to your actual development environment, rebuild and redeploy.

    jQuery - Getting the text value of a table cell in the same row as a clicked element

    so you can use parent() to reach to the parent tr and then use find to gather the td with class two

    var Something = $(this).parent().find(".two").html();

    or

    var Something = $(this).parent().parent().find(".two").html();

    use as much as parent() what ever the depth of the clicked object according to the tr row

    hope this works...

    Why not use tables for layout in HTML?

    I once learned that a table loads at once, in other words when a connection is slow, the space where the table comes remains blank until the entire table is loaded, a div on the other hand loads top to bottom as fast as the data comes and regardless if it is allready complete or not.

    SQL Server Case Statement when IS NULL

    In this situation you can use ISNULL() function instead of CASE expression

    ISNULL(B.[STAT], C.[EVENT DATE]+10) AS [DATE]
    

    How can I extract audio from video with ffmpeg?

    Seems like you're extracting audio from a video file & downmixing to stereo channel.
    To just extract audio (without re-encoding):

    ffmpeg.exe -i in.mp4 -vn -c:a copy out.m4a
    

    To extract audio & downmix to stereo (without re-encoding):

    ffmpeg.exe -i in.mp4 -vn -c:a copy -ac 2 out.m4a
    

    To generate an mp3 file, you'd re-encode audio:

    ffmpeg.exe -i in.mp4 -vn -ac 2 out.mp3
    

    Force uninstall of Visual Studio

    So Soumyaansh's Revo Uninstaller Pro fix worked for me :) ( After 2 days of troubleshooting other options {screams internally 😀} ).

    I did run into the an issue with his method though, "Could not find a suitable SDK to target" even though I selected to install Visual Studio with custom settings and selected the SDK I wanted to install. You may need to download the Windows 10 Standalone SDK to resolved this, in order to develop UWP apps if you see this same error after reinstalling Visual Studio.

    To do this

    1. Uninstall any Windows 10 SDKs that me on the system (the naming schem for them looks like Windows 10 SDK (WINDOWS_VERSION_NUMBER_HERE) -> Windows 10 SDK (14393) etc . . .). If there are no SDKs on your system go to step 2!
    2. All that's left is to download the SDKs you want by Checking out the SDK Archive for all available SDKs and you should be good to go in developing for the UWP!

    What data type to use for hashed password field and what length?

    You might find this Wikipedia article on salting worthwhile. The idea is to add a set bit of data to randomize your hash value; this will protect your passwords from dictionary attacks if someone gets unauthorized access to the password hashes.

    ES6 export default with multiple functions referring to each other

    One alternative is to change up your module. Generally if you are exporting an object with a bunch of functions on it, it's easier to export a bunch of named functions, e.g.

    export function foo() { console.log('foo') }, 
    export function bar() { console.log('bar') },
    export function baz() { foo(); bar() }
    

    In this case you are export all of the functions with names, so you could do

    import * as fns from './foo';
    

    to get an object with properties for each function instead of the import you'd use for your first example:

    import fns from './foo';
    

    LINQ's Distinct() on a particular property

    You can use DistinctBy() for getting Distinct records by an object property. Just add the following statement before using it:

    using Microsoft.Ajax.Utilities;

    and then use it like following:

    var listToReturn = responseList.DistinctBy(x => x.Index).ToList();
    

    where 'Index' is the property on which i want the data to be distinct.

    Sort rows in data.table in decreasing order on string key `order(-x,v)` gives error on data.table 1.9.4 or earlier

    You can only use - on the numeric entries, so you can use decreasing and negate the ones you want in increasing order:

    DT[order(x,-v,decreasing=TRUE),]
          x y v
     [1,] c 1 7
     [2,] c 3 8
     [3,] c 6 9
     [4,] b 1 1
     [5,] b 3 2
     [6,] b 6 3
     [7,] a 1 4
     [8,] a 3 5
     [9,] a 6 6
    

    How to fix the session_register() deprecated issue?

    To complement Felix Kling's answer, I was studying a codebase that used to have the following code:

    if (is_array($start_vars)) {
        foreach ($start_vars as $var) {
            session_register($var);
        }
    } else if (!(empty($start_vars))) {
        session_register($start_vars);
    }
    

    In order to not use session_register they made the following adjustments:

    if (is_array($start_vars)) {
        foreach ($start_vars as $var) {
            $_SESSION[$var] =  $GLOBALS[$var];
        }
    } else if (!(empty($start_vars))) {
        $_SESSION[$start_vars] =  $GLOBALS[$start_vars];
    }
    

    What Java ORM do you prefer, and why?

    Hibernate, because it's basically the defacto standard in Java and was one of the driving forces in the creation of the JPA. It's got excellent support in Spring, and almost every Java framework supports it. Finally, GORM is a really cool wrapper around it doing dynamic finders and so on using Groovy.

    It's even been ported to .NET (NHibernate) so you can use it there too.

    Basic calculator in Java

    we can simply use in.next().charAt(0); to assign + - * / operations as characters by initializing operation as a char.

    import java.util.*; public class Calculator {

    public static void main(String[] args) {
    
    Scanner in = new Scanner(System.in);
    
    char operation;
    int num1;
    int num2;
    
     System.out.println("Enter First Number");
    
    num1 = in.nextInt();
    
    System.out.println("Enter Operation");
    
    operation = in.next().charAt(0);
    
    System.out.println("Enter Second Number");
    
    num2 = in.nextInt();
    
    if (operation == '+')//make sure single quotes
    {
        System.out.println("your answer is " + (num1 + num2));
    }
    if (operation == '-')
    {
        System.out.println("your answer is " + (num1 - num2));
    }
    if (operation == '/')
    {
        System.out.println("your answer is " + (num1 / num2));
    }
    if (operation == '*')
    {
        System.out.println("your answer is " + (num1 * num2));
    }
    
    }
    

    }

    gdb: how to print the current line or find the current line number?

    I do get the same information while debugging. Though not while I am checking the stacktrace. Most probably you would have used the optimization flag I think. Check this link - something related.

    Try compiling with -g3 remove any optimization flag. Then it might work. HTH!

    Best Practices for mapping one object to another

    /// <summary>
    /// map properties
    /// </summary>
    /// <param name="sourceObj"></param>
    /// <param name="targetObj"></param>
    private void MapProp(object sourceObj, object targetObj)
    {
        Type T1 = sourceObj.GetType();
        Type T2 = targetObj.GetType();
    
        PropertyInfo[] sourceProprties = T1.GetProperties(BindingFlags.Instance | BindingFlags.Public);
        PropertyInfo[] targetProprties = T2.GetProperties(BindingFlags.Instance | BindingFlags.Public);
    
       foreach (var sourceProp in sourceProprties)
       {
           object osourceVal = sourceProp.GetValue(sourceObj, null);
           int entIndex = Array.IndexOf(targetProprties, sourceProp);
           if (entIndex >= 0)
           {
               var targetProp = targetProprties[entIndex];
               targetProp.SetValue(targetObj, osourceVal);
           }
       }
    }
    

    How to access global variables

    I suggest use the common way of import.

    First I will explain the way it called "relative import" maybe this way cause of some error

    Second I will explain the common way of import.

    FIRST:

    In go version >= 1.12 there is some new tips about import file and somethings changed.

    1- You should put your file in another folder for example I create a file in "model" folder and the file's name is "example.go"

    2- You have to use uppercase when you want to import a file!

    3- Use Uppercase for variables, structures and functions that you want to import in another files

    Notice: There is no way to import the main.go in another file.

    file directory is:

    root
    |_____main.go
    |_____model
              |_____example.go
    

    this is a example.go:

    package model
    
    import (
        "time"
    )
    
    var StartTime = time.Now()
    

    and this is main.go you should use uppercase when you want to import a file. "Mod" started with uppercase

    package main
    
    import (
        Mod "./model"
        "fmt"
    )
    
    func main() {
        fmt.Println(Mod.StartTime)
    }
    

    NOTE!!!

    NOTE: I don't recommend this this type of import!

    SECOND:

    (normal import)

    the better way import file is:

    your structure should be like this:

    root
    |_____github.com
             |_________Your-account-name-in-github
             |                |__________Your-project-name
             |                                |________main.go
             |                                |________handlers
             |                                |________models
             |               
             |_________gorilla
                             |__________sessions
    
    

    and this is a example:

    package main
    
    import (
        "github.com/gorilla/sessions"
    )
    
    func main(){
         //you can use sessions here
    }
    

    so you can import "github.com/gorilla/sessions" in every where that you want...just import it.

    How to get all of the immediate subdirectories in Python

    I have to mention the path.py library, which I use very often.

    Fetching the immediate subdirectories become as simple as that:

    my_dir.dirs()

    The full working example is:

    from path import Path
    
    my_directory = Path("path/to/my/directory")
    
    subdirs = my_directory.dirs()
    

    NB: my_directory still can be manipulated as a string, since Path is a subclass of string, but providing a bunch of useful methods for manipulating paths

    Swift's guard keyword

    Guard statement going to do . it is couple of different

    1) it is allow me to reduce nested if statement
    2) it is increase my scope which my variable accessible

    if Statement

    func doTatal(num1 : Int?, num2: Int?) {
      // nested if statement
        if let fistNum = num1 where num1 > 0 {
            if let lastNum = num2 where num2 < 50 {
    
              let total = fistNum + lastNum
            }
        }
     // don't allow me to access out of the scope 
     //total = fistNum + lastNum 
    }
    

    Guard statement

    func doTatal(num1 : Int?, num2: Int?) {
       //reduce  nested if statement and check positive way not negative way 
        guard let fistNum = num1 where num1 > 0 else{
          return
        }
        guard  let lastNum = num2 where num2 < 50 else {
         return
        }
        // increase my scope which my variable accessible
        let total = fistNum + lastNum
    
    }
    

    How often does python flush to a file?

    You can also force flush the buffer to a file programmatically with the flush() method.

    with open('out.log', 'w+') as f:
        f.write('output is ')
        # some work
        s = 'OK.'
        f.write(s)
        f.write('\n')
        f.flush()
        # some other work
        f.write('done\n')
        f.flush()
    

    I have found this useful when tailing an output file with tail -f.

    How to get package name from anywhere?

    An idea is to have a static variable in your main activity, instantiated to be the package name. Then just reference that variable.

    You will have to initialize it in the main activity's onCreate() method:

    Global to the class:

    public static String PACKAGE_NAME;
    

    Then..

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    
        PACKAGE_NAME = getApplicationContext().getPackageName();
    }
    

    You can then access it via Main.PACKAGE_NAME.

    Check object empty

    I suggest you add separate overloaded method and add them to your projects Utility/Utilities class.

    To check for Collection be empty or null

    public static boolean isEmpty(Collection obj) {
        return obj == null || obj.isEmpty();
    }
    

    or use Apache Commons CollectionUtils.isEmpty()

    To check if Map is empty or null

    public static boolean isEmpty(Map<?, ?> value) {
        return value == null || value.isEmpty();
    }
    

    or use Apache Commons MapUtils.isEmpty()

    To check for String empty or null

    public static boolean isEmpty(String string) {
        return string == null || string.trim().isEmpty();
    }
    

    or use Apache Commons StringUtils.isBlank()

    To check an object is null is easy but to verify if it's empty is tricky as object can have many private or inherited variables and nested objects which should all be empty. For that All need to be verified or some isEmpty() method be in all objects which would verify the objects emptiness.

    HTTP Headers for File Downloads

    You can try this force-download script. Even if you don't use it, it'll probably point you in the right direction:

    <?php
    
    $filename = $_GET['file'];
    
    // required for IE, otherwise Content-disposition is ignored
    if(ini_get('zlib.output_compression'))
      ini_set('zlib.output_compression', 'Off');
    
    // addition by Jorg Weske
    $file_extension = strtolower(substr(strrchr($filename,"."),1));
    
    if( $filename == "" ) 
    {
      echo "<html><title>eLouai's Download Script</title><body>ERROR: download file NOT SPECIFIED. USE force-download.php?file=filepath</body></html>";
      exit;
    } elseif ( ! file_exists( $filename ) ) 
    {
      echo "<html><title>eLouai's Download Script</title><body>ERROR: File not found. USE force-download.php?file=filepath</body></html>";
      exit;
    };
    switch( $file_extension )
    {
      case "pdf": $ctype="application/pdf"; break;
      case "exe": $ctype="application/octet-stream"; break;
      case "zip": $ctype="application/zip"; break;
      case "doc": $ctype="application/msword"; break;
      case "xls": $ctype="application/vnd.ms-excel"; break;
      case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
      case "gif": $ctype="image/gif"; break;
      case "png": $ctype="image/png"; break;
      case "jpeg":
      case "jpg": $ctype="image/jpg"; break;
      default: $ctype="application/octet-stream";
    }
    header("Pragma: public"); // required
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: private",false); // required for certain browsers 
    header("Content-Type: $ctype");
    // change, added quotes to allow spaces in filenames, by Rajkumar Singh
    header("Content-Disposition: attachment; filename=\"".basename($filename)."\";" );
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".filesize($filename));
    readfile("$filename");
    exit();
    

    Use 'class' or 'typename' for template parameters?

    There is a difference, and you should prefer class to typename.

    But why?

    typename is illegal for template template arguments, so to be consistent, you should use class:

    template<template<class> typename MyTemplate, class Bar> class Foo { };    //  :(
    template<template<class>    class MyTemplate, class Bar> class Foo { };    //  :)
    

    PIL image to array (numpy array to array) - Python

    I think what you are looking for is:

    list(im.getdata())
    

    or, if the image is too big to load entirely into memory, so something like that:

    for pixel in iter(im.getdata()):
        print pixel
    

    from PIL documentation:

    getdata

    im.getdata() => sequence

    Returns the contents of an image as a sequence object containing pixel values. The sequence object is flattened, so that values for line one follow directly after the values of line zero, and so on.

    Note that the sequence object returned by this method is an internal PIL data type, which only supports certain sequence operations, including iteration and basic sequence access. To convert it to an ordinary sequence (e.g. for printing), use list(im.getdata()).

    Python Graph Library

    I second zweiterlinde's suggestion to use python-graph. I've used it as the basis of a graph-based research project that I'm working on. The library is well written, stable, and has a good interface. The authors are also quick to respond to inquiries and reports.

    jQuery - how to check if an element exists?

    if ($("#MyId").length) { ... write some code here ...}
    

    This from will automatically check for the presence of the element and will return true if an element exists.

    asp.net: How can I remove an item from a dropdownlist?

    There is also a slightly simpler way of removing the value.

    mydropdownid.Items.Remove("Chicago"); 
    <dropdown id=mydropdown .....>
    

    values

    • Florida
    • Texas
    • Utah
    • Chicago

    How to update fields in a model without creating a new record in django?

    If you get a model instance from the database, then calling the save method will always update that instance. For example:

    t = TemperatureData.objects.get(id=1)
    t.value = 999  # change field
    t.save() # this will update only
    

    If your goal is prevent any INSERTs, then you can override the save method, test if the primary key exists and raise an exception. See the following for more detail:

    android button selector

    Create custom_selector.xml in drawable folder

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
       <item android:drawable="@drawable/unselected" android:state_pressed="true" />
       <item android:drawable="@drawable/selected" />
    </selector>
    

    Create selected.xml shape in drawable folder

    <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="90dp">
       <solid android:color="@color/selected"/>
       <padding />
       <stroke android:color="#000" android:width="1dp"/>
       <corners android:bottomRightRadius="15dp" android:bottomLeftRadius="15dp" android:topLeftRadius="15dp" android:topRightRadius="15dp"/>
    </shape>
    

    Create unselected.xml shape in drawable folder

    <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="90dp">
       <solid android:color="@color/unselected"/>
       <padding />
       <stroke android:color="#000" android:width="1dp"/>
       <corners android:bottomRightRadius="15dp" android:bottomLeftRadius="15dp" android:topLeftRadius="15dp" android:topRightRadius="15dp"/>
    </shape>
    

    Add following colors for selected/unselected state in color.xml of values folder

    <color name="selected">#a8cf45</color>
    <color name="unselected">#ff8cae3b</color>
    

    you can check complete solution from here

    Invalid default value for 'create_date' timestamp field

    I was able to resolve this issue on OS X by installing MySQL from Homebrew

    brew install mysql
    

    by adding the following to /usr/local/etc/my.cnf

    sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    

    and restarting MySQL

    brew tap homebrew/services
    brew services restart mysql
    

    Text that shows an underline on hover

    <span class="txt">Some Text</span>
    
    .txt:hover {
        text-decoration: underline;
    }
    

    How do I create a circle or square with just CSS - with a hollow center?

    You can use special characters to make lots of shapes. Examples: http://jsfiddle.net/martlark/jWh2N/2/

    _x000D_
    _x000D_
    <table>_x000D_
      <tr>_x000D_
        <td>hollow square</td>_x000D_
        <td>&#9633;</td>_x000D_
      </tr>_x000D_
      <tr>_x000D_
        <td>solid circle</td>_x000D_
        <td>&bull;</td>_x000D_
      </tr>_x000D_
      <tr>_x000D_
        <td>open circle</td>_x000D_
        <td>&#3664;</td>_x000D_
      </tr>_x000D_
    _x000D_
    </table>
    _x000D_
    _x000D_
    _x000D_

    enter image description here

    Many more can be found here: HTML Special Characters

    Android button with icon and text

    You can use the Material Components Library and the MaterialButton component.
    Use the app:icon and app:iconGravity="start" attributes.

    Something like:

      <com.google.android.material.button.MaterialButton
            style="@style/Widget.MaterialComponents.Button.Icon"
            app:icon="@drawable/..."
            app:iconGravity="start"
            ../>
    

    enter image description here

    Joining two table entities in Spring Data JPA

    For a typical example of employees owning one or more phones, see this wikibook section.

    For your specific example, if you want to do a one-to-one relationship, you should change the next code in ReleaseDateType model:

    @Column(nullable = true) 
    private Integer media_Id;
    

    for:

    @OneToOne(fetch = FetchType.LAZY)
    @JoinColumn(name="CACHE_MEDIA_ID", nullable=true)
    private CacheMedia cacheMedia ;
    

    and in CacheMedia model you need to add:

    @OneToOne(cascade=ALL, mappedBy="ReleaseDateType")
    private ReleaseDateType releaseDateType;
    

    then in your repository you should replace:

    @Query("Select * from A a  left join B b on a.id=b.id")
    public List<ReleaseDateType> FindAllWithDescriptionQuery();
    

    by:

    //In this case a query annotation is not need since spring constructs the query from the method name
    public List<ReleaseDateType> findByCacheMedia_Id(Integer id); 
    

    or by:

    @Query("FROM ReleaseDateType AS rdt WHERE cm.rdt.cacheMedia.id = ?1")    //This is using a named query method
    public List<ReleaseDateType> FindAllWithDescriptionQuery(Integer id);
    

    Or if you prefer to do a @OneToMany and @ManyToOne relation, you should change the next code in ReleaseDateType model:

    @Column(nullable = true) 
    private Integer media_Id;
    

    for:

    @OneToMany(cascade=ALL, mappedBy="ReleaseDateType")
    private List<CacheMedia> cacheMedias ;
    

    and in CacheMedia model you need to add:

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name="RELEASE_DATE_TYPE_ID", nullable=true)
    private ReleaseDateType releaseDateType;
    

    then in your repository you should replace:

    @Query("Select * from A a  left join B b on a.id=b.id")
    public List<ReleaseDateType> FindAllWithDescriptionQuery();
    

    by:

    //In this case a query annotation is not need since spring constructs the query from the method name
    public List<ReleaseDateType> findByCacheMedias_Id(Integer id); 
    

    or by:

    @Query("FROM ReleaseDateType AS rdt LEFT JOIN rdt.cacheMedias AS cm WHERE cm.id = ?1")    //This is using a named query method
    public List<ReleaseDateType> FindAllWithDescriptionQuery(Integer id);
    

    #1025 - Error on rename of './database/#sql-2e0f_1254ba7' to './database/table' (errno: 150)

    To bypass this in PHPMyAdmin or with MySQL, first remove the foreign key constraint before renaming the attribute.

    (For PHPMyAdmin users: To remove FK constrains in PHPMyAdmin, select the attribute then click "relation view" next to "print view" in the toolbar below the table structure)

    Padding is invalid and cannot be removed?

    Another scenario, again for the benefit of people searching.

    For me this error occurred during the Dispose() method which masked a previous error unrelated to encryption.

    Once the other component was fixed, this exception went away.

    How do I make jQuery wait for an Ajax call to finish before it returns?

    If you don't want the $.ajax() function to return immediately, set the async option to false:

    $(".my_link").click(
        function(){
        $.ajax({
            url: $(this).attr('href'),
            type: 'GET',
            async: false,
            cache: false,
            timeout: 30000,
            fail: function(){
                return true;
            },
            done: function(msg){ 
                if (parseFloat(msg)){
                    return false;
                } else {
                    return true;
                }
            }
        });
    });
    

    But, I would note that this would be counter to the point of AJAX. Also, you should be handling the response in the fail and done functions. Those functions will only be called when the response is received from the server.

    How to get arguments with flags in Bash

    I think this would serve as a simpler example of what you want to achieve. There is no need to use external tools. Bash built in tools can do the job for you.

    function DOSOMETHING {
    
       while test $# -gt 0; do
               case "$1" in
                    -first)
                        shift
                        first_argument=$1
                        shift
                        ;;
                    -last)
                        shift
                        last_argument=$1
                        shift
                        ;;
                    *)
                       echo "$1 is not a recognized flag!"
                       return 1;
                       ;;
              esac
      done  
    
      echo "First argument : $first_argument";
      echo "Last argument : $last_argument";
     }
    

    This will allow you to use flags so no matter which order you are passing the parameters you will get the proper behavior.

    Example :

     DOSOMETHING -last "Adios" -first "Hola"
    

    Output :

     First argument : Hola
     Last argument : Adios
    

    You can add this function to your profile or put it inside of a script.

    Thanks!

    Edit : Save this as a a file and then execute it as yourfile.sh -last "Adios" -first "Hola"

    #!/bin/bash
    while test $# -gt 0; do
               case "$1" in
                    -first)
                        shift
                        first_argument=$1
                        shift
                        ;;
                    -last)
                        shift
                        last_argument=$1
                        shift
                        ;;
                    *)
                       echo "$1 is not a recognized flag!"
                       return 1;
                       ;;
              esac
      done  
    
      echo "First argument : $first_argument";
      echo "Last argument : $last_argument";
    

    write() versus writelines() and concatenated strings

    if you just want to save and load a list try Pickle

    Pickle saving:

    with open("yourFile","wb")as file:
     pickle.dump(YourList,file)
    

    and loading:

    with open("yourFile","rb")as file:
     YourList=pickle.load(file)
    

    Python: Get relative path from comparing two absolute paths

    os.path.commonprefix() and os.path.relpath() are your friends:

    >>> print os.path.commonprefix(['/usr/var/log', '/usr/var/security'])
    '/usr/var'
    >>> print os.path.commonprefix(['/tmp', '/usr/var'])  # No common prefix: the root is the common prefix
    '/'
    

    You can thus test whether the common prefix is one of the paths, i.e. if one of the paths is a common ancestor:

    paths = […, …, …]
    common_prefix = os.path.commonprefix(list_of_paths)
    if common_prefix in paths:
        …
    

    You can then find the relative paths:

    relative_paths = [os.path.relpath(path, common_prefix) for path in paths]
    

    You can even handle more than two paths, with this method, and test whether all the paths are all below one of them.

    PS: depending on how your paths look like, you might want to perform some normalization first (this is useful in situations where one does not know whether they always end with '/' or not, or if some of the paths are relative). Relevant functions include os.path.abspath() and os.path.normpath().

    PPS: as Peter Briggs mentioned in the comments, the simple approach described above can fail:

    >>> os.path.commonprefix(['/usr/var', '/usr/var2/log'])
    '/usr/var'
    

    even though /usr/var is not a common prefix of the paths. Forcing all paths to end with '/' before calling commonprefix() solves this (specific) problem.

    PPPS: as bluenote10 mentioned, adding a slash does not solve the general problem. Here is his followup question: How to circumvent the fallacy of Python's os.path.commonprefix?

    PPPPS: starting with Python 3.4, we have pathlib, a module that provides a saner path manipulation environment. I guess that the common prefix of a set of paths can be obtained by getting all the prefixes of each path (with PurePath.parents()), taking the intersection of all these parent sets, and selecting the longest common prefix.

    PPPPPS: Python 3.5 introduced a proper solution to this question: os.path.commonpath(), which returns a valid path.

    Launch custom android application from android browser

    Look @JRuns answer in here. The idea is to create html with your custom scheme and upload it somewhere. Then if you click on your custom link on your html-file, you will be redirected to your app. I used this article for android. But dont forget to set full name Name = "MyApp.Mobile.Droid.MainActivity" attribute to your target activity.

    what happens when you type in a URL in browser

    Attention: this is an extremely rough and oversimplified sketch, assuming the simplest possible HTTP request (no HTTPS, no HTTP2, no extras), simplest possible DNS, no proxies, single-stack IPv4, one HTTP request only, a simple HTTP server on the other end, and no problems in any step. This is, for most contemporary intents and purposes, an unrealistic scenario; all of these are far more complex in actual use, and the tech stack has become an order of magnitude more complicated since this was written. With this in mind, the following timeline is still somewhat valid:

    1. browser checks cache; if requested object is in cache and is fresh, skip to #9
    2. browser asks OS for server's IP address
    3. OS makes a DNS lookup and replies the IP address to the browser
    4. browser opens a TCP connection to server (this step is much more complex with HTTPS)
    5. browser sends the HTTP request through TCP connection
    6. browser receives HTTP response and may close the TCP connection, or reuse it for another request
    7. browser checks if the response is a redirect or a conditional response (3xx result status codes), authorization request (401), error (4xx and 5xx), etc.; these are handled differently from normal responses (2xx)
    8. if cacheable, response is stored in cache
    9. browser decodes response (e.g. if it's gzipped)
    10. browser determines what to do with response (e.g. is it a HTML page, is it an image, is it a sound clip?)
    11. browser renders response, or offers a download dialog for unrecognized types

    Again, discussion of each of these points have filled countless pages; take this only as a summary, abridged for the sake of clarity. Also, there are many other things happening in parallel to this (processing typed-in address, speculative prefetching, adding page to browser history, displaying progress to user, notifying plugins and extensions, rendering the page while it's downloading, pipelining, connection tracking for keep-alive, cookie management, checking for malicious content etc.) - and the whole operation gets an order of magnitude more complex with HTTPS (certificates and ciphers and pinning, oh my!).

    How to make a phone call in android and come back to my activity when the call is done?

    Here is my example, first the user gets to write in the number he/she wants to dial and then presses a call button and gets directed to the phone. After call cancelation the user gets sent back to the application. In order to this the button needs to have a onClick method ('makePhoneCall' in this example) in the xml. You also need to register the permission in the manifest.

    Manifest

    <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    

    Activity

    import android.net.Uri;
    import android.os.Bundle;
    import android.app.Activity;
    import android.content.Intent;
    import android.view.View;
    import android.widget.EditText;
    import android.widget.Toast;
    
    public class PhoneCall extends Activity {
    
        EditText phoneTo;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_phone_call);
    
            phoneTo = (EditText) findViewById(R.id.phoneNumber);
    
        }
        public void makePhoneCall(View view) {
    
    
    
    
            try {
                String number = phoneTo.getText().toString();
                Intent phoneIntent = new Intent(Intent.ACTION_CALL);
                phoneIntent.setData(Uri.parse("tel:"+ number));
                startActivity(phoneIntent);
    
    
            } catch (android.content.ActivityNotFoundException ex) {
                Toast.makeText(PhoneCall.this,
                        "Call failed, please try again later!", Toast.LENGTH_SHORT).show();
            }
        }
    
    }
    

    XML

     <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:inputType="phone"
            android:ems="10"
            android:id="@+id/phoneNumber"
            android:layout_marginTop="67dp"
            android:layout_below="@+id/textView"
            android:layout_centerHorizontal="true" />
    
        <Button
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="Call"
            android:id="@+id/makePhoneCall"
            android:onClick="makePhoneCall"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true" />
    

    How to create an empty file with Ansible?

    Changed if file not exists. Create empty file.

    - name: create fake 'nologin' shell
      file:
        path: /etc/nologin
        state: touch
      register: p
      changed_when: p.diff.before.state == "absent"
    

    How to shift a column in Pandas DataFrame

    This is how I do it:

    df_ext = pd.DataFrame(index=pd.date_range(df.index[-1], periods=8, closed='right'))
    df2 = pd.concat([df, df_ext], axis=0, sort=True)
    df2["forecast"] = df2["some column"].shift(7)
    

    Basically I am generating an empty dataframe with the desired index and then just concatenate them together. But I would really like to see this as a standard feature in pandas so I have proposed an enhancement to pandas.

    Unit testing void methods?

    Depends on what it's doing. If it has parameters, pass in mocks that you could ask later on if they have been called with the right set of parameters.

    Validate email address textbox using JavaScript

    You should use below regex which have tested all possible email combination

         function validate(email) {
                var reg = "^[a-zA-Z0-9]+(\.[_a-zA-Z0-9]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,15})$";
                //var address = document.getElementById[email].value;
                if (reg.test(email) == false) 
                {
                    alert('Invalid Email Address');
                    return (false);
                }  
         }
    

    Bonus tip if you're using this in Input tag than you can directly add the regex in that tag example

    <input type="text"  
           name="email" 
           class="form-control"
           placeholder="Email" 
           required 
           pattern="^[a-zA-Z0-9]+(\.[_a-zA-Z0-9]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,15})$"/>
    

    Above you can see two attribute required & pattern in

    required make sure it input block have data @time of submit &
    pattern make sure it input tag validate based in pattern(regex) @time of submit

    For more info you can go throw doc

    Excel 2013 VBA Clear All Filters macro

    I found this answer in a Microsoft webpage

    It uses the AutoFilterMode as a boolean .

       If Worksheets("Sheet1").AutoFilterMode Then Selection.AutoFilter
    

    Order by multiple columns with Doctrine

    The orderBy method requires either two strings or an Expr\OrderBy object. If you want to add multiple order declarations, the correct thing is to use addOrderBy method, or instantiate an OrderBy object and populate it accordingly:

       # Inside a Repository method:
       $myResults = $this->createQueryBuilder('a')
           ->addOrderBy('a.column1', 'ASC')
           ->addOrderBy('a.column2', 'ASC')
           ->addOrderBy('a.column3', 'DESC')
       ;
    
       # Or, using a OrderBy object:
       $orderBy = new OrderBy('a.column1', 'ASC');
       $orderBy->add('a.column2', 'ASC');
       $orderBy->add('a.column3', 'DESC');
    
       $myResults = $this->createQueryBuilder('a')
           ->orderBy($orderBy)
       ;
    

    how to add value to a tuple?

    As mentioned in other answers, tuples are immutable once created, and a list might serve your purposes better.

    That said, another option for creating a new tuple with extra items is to use the splat operator:

    new_tuple = (*old_tuple, 'new', 'items')

    I like this syntax because it looks like a new tuple, so it clearly communicates what you're trying to do.

    Using splat, a potential solution is:

    list = [(*i, ''.join(i)) for i in list]

    What causes a TCP/IP reset (RST) flag to be sent?

    Some firewalls do that if a connection is idle for x number of minutes. Some ISPs set their routers to do that for various reasons as well.

    In this day and age, you'll need to gracefully handle (re-establish as needed) that condition.

    Why is document.write considered a "bad practice"?

    Another legitimate use of document.write comes from the HTML5 Boilerplate index.html example.

    <!-- Grab Google CDN's jQuery, with a protocol relative URL; fall back to local if offline -->
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
    <script>window.jQuery || document.write('<script src="js/libs/jquery-1.6.3.min.js"><\/script>')</script>
    

    I've also seen the same technique for using the json2.js JSON parse/stringify polyfill (needed by IE7 and below).

    <script>window.JSON || document.write('<script src="json2.js"><\/script>')</script>
    

    The entity name must immediately follow the '&' in the entity reference

    You need to add a CDATA tag inside of the script tag, unless you want to manually go through and escape all XHTML characters (e.g. & would need to become &amp;). For example:

    <script>
    //<![CDATA[
    var el = document.getElementById("pacman");
    
    if (Modernizr.canvas && Modernizr.localstorage && 
        Modernizr.audio && (Modernizr.audio.ogg || Modernizr.audio.mp3)) {
      window.setTimeout(function () { PACMAN.init(el, "./"); }, 0);
    } else { 
      el.innerHTML = "Sorry, needs a decent browser<br /><small>" + 
        "(firefox 3.6+, Chrome 4+, Opera 10+ and Safari 4+)</small>";
    }
    //]]>
    </script>
    

    how to get current datetime in SQL?

    NOW() returns 2009-08-05 15:13:00

    CURDATE() returns 2009-08-05

    CURTIME() returns 15:13:00

    How to get current date in 'YYYY-MM-DD' format in ASP.NET?

    The ToString method on the DateTime struct can take a format parameter:

    var dateAsString = DateTime.Now.ToString("yyyy-MM-dd");
    // dateAsString = "2011-02-17"
    

    Documentation for standard and custom format strings is available on MSDN.

    want current date and time in "dd/MM/yyyy HH:mm:ss.SS" format

    use

    Date date = new Date();
    String strDate = sdf.format(date);
    

    intead Of

    Calendar cal = Calendar.getInstance();
    String strDate = sdf.format(cal.getTime());
    

    How do I remove a key from a JavaScript object?

    It's as easy as:

    delete object.keyname;
    

    or

    delete object["keyname"];
    

    Log all queries in mysql

    For the record, general_log and slow_log were introduced in 5.1.6:

    http://dev.mysql.com/doc/refman/5.1/en/log-destinations.html

    5.2.1. Selecting General Query and Slow Query Log Output Destinations

    As of MySQL 5.1.6, MySQL Server provides flexible control over the destination of output to the general query log and the slow query log, if those logs are enabled. Possible destinations for log entries are log files or the general_log and slow_log tables in the mysql database

    jQuery textbox change event

    I have found that this works:

    $(document).ready(function(){
        $('textarea').bind('input propertychange', function() {
            //do your update here
        }
    
    })
    

    Explanation of "ClassCastException" in Java

    If you want to sort objects but if class didn't implement Comparable or Comparator, then you will get ClassCastException For example

    class Animal{
       int age;
       String type;
    
       public Animal(int age, String type){
          this.age = age;
          this.type = type;
       }
    }
    public class MainCls{
       public static void main(String[] args){
           Animal[] arr = {new Animal(2, "Her"), new Animal(3,"Car")};
           Arrays.sort(arr);
       }
    }
    

    Above main method will throw below runtime class cast exception

    Exception in thread "main" java.lang.ClassCastException: com.default.Animal cannot be cast to java.lang.Comparable

    Items in JSON object are out of order using "json.dumps"?

    in JSON, as in Javascript, order of object keys is meaningless, so it really doesn't matter what order they're displayed in, it is the same object.

    Running Jupyter via command line on Windows

    100% working solution:

    Follow these steps:

    1. Open the folder where you downloaded "python-3.8.2-amd64.exe" setup or any other version of python package

    2. Double click on "python-3.8.2-amd64.exe'

    3. Click "Modify"

    4. You will see "Optional features"

    5. Click "next"

    6. Select "Add python to environment variables"

    7. Click "install"

    8. Then u can run jupyter in any desired folder u desire

        E.g  open "cmd" command prompt
    
        Type : 
        E: 
    
        E:\>jupyter notebook
    
        It will get started without showing
    
        'Jupyter' is not recognized
    

    Thanks

    How to convert HTML file to word?

    just past this on head of your php page. before any code on this should be the top code.

    <?php
    header("Content-Type: application/vnd.ms-word"); 
    header("Expires: 0"); 
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
    header("content-disposition: attachment;filename=Hawala.doc");
    
    ?>
    

    this will convert all html to MSWORD, now you can customize it according to your client requirement.

    Wordpress plugin install: Could not create directory

    A quick solution would be to change the permissions of the following:

    • /var/www/html/wordpress/wp-content
    • /var/www/html/wordpress/wp-content/plugins

    Change it to 775.

    After installation, don't forget to change it back to the default permissions.. :D

    Check if a file exists in jenkins pipeline

    You need to use brackets when using the fileExists step in an if condition or assign the returned value to a variable

    Using variable:

    def exists = fileExists 'file'
    
    if (exists) {
        echo 'Yes'
    } else {
        echo 'No'
    }
    

    Using brackets:

    if (fileExists('file')) {
        echo 'Yes'
    } else {
        echo 'No'
    }
    

    How do I drop a foreign key in SQL Server?

    I think this will helpful to you...

    DECLARE @ConstraintName nvarchar(200)
    SELECT 
        @ConstraintName = KCU.CONSTRAINT_NAME
    FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS RC 
    INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS KCU
        ON KCU.CONSTRAINT_CATALOG = RC.CONSTRAINT_CATALOG  
        AND KCU.CONSTRAINT_SCHEMA = RC.CONSTRAINT_SCHEMA 
        AND KCU.CONSTRAINT_NAME = RC.CONSTRAINT_NAME
    WHERE
        KCU.TABLE_NAME = 'TABLE_NAME' AND
        KCU.COLUMN_NAME = 'TABLE_COLUMN_NAME'
    IF @ConstraintName IS NOT NULL EXEC('alter table TABLE_NAME drop  CONSTRAINT ' + @ConstraintName)
    

    It will delete foreign Key Constraint based on specific table and column.

    Escape string for use in Javascript regex

    Short 'n Sweet

    function escapeRegExp(string) {
      return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
    }
    

    Example

    escapeRegExp("All of these should be escaped: \ ^ $ * + ? . ( ) | { } [ ]");
    
    >>> "All of these should be escaped: \\ \^ \$ \* \+ \? \. \( \) \| \{ \} \[ \] "
    

    (NOTE: the above is not the original answer; it was edited to show the one from MDN. This means it does not match what you will find in the code in the below npm, and does not match what is shown in the below long answer. The comments are also now confusing. My recommendation: use the above, or get it from MDN, and ignore the rest of this answer. -Darren,Nov 2019)

    Install

    Available on npm as escape-string-regexp

    npm install --save escape-string-regexp
    

    Note

    See MDN: Javascript Guide: Regular Expressions

    Other symbols (~`!@# ...) MAY be escaped without consequence, but are not required to be.

    .

    .

    .

    .

    Test Case: A typical url

    escapeRegExp("/path/to/resource.html?search=query");
    
    >>> "\/path\/to\/resource\.html\?search=query"
    

    The Long Answer

    If you're going to use the function above at least link to this stack overflow post in your code's documentation so that it doesn't look like crazy hard-to-test voodoo.

    var escapeRegExp;
    
    (function () {
      // Referring to the table here:
      // https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/regexp
      // these characters should be escaped
      // \ ^ $ * + ? . ( ) | { } [ ]
      // These characters only have special meaning inside of brackets
      // they do not need to be escaped, but they MAY be escaped
      // without any adverse effects (to the best of my knowledge and casual testing)
      // : ! , = 
      // my test "~!@#$%^&*(){}[]`/=?+\|-_;:'\",<.>".match(/[\#]/g)
    
      var specials = [
            // order matters for these
              "-"
            , "["
            , "]"
            // order doesn't matter for any of these
            , "/"
            , "{"
            , "}"
            , "("
            , ")"
            , "*"
            , "+"
            , "?"
            , "."
            , "\\"
            , "^"
            , "$"
            , "|"
          ]
    
          // I choose to escape every character with '\'
          // even though only some strictly require it when inside of []
        , regex = RegExp('[' + specials.join('\\') + ']', 'g')
        ;
    
      escapeRegExp = function (str) {
        return str.replace(regex, "\\$&");
      };
    
      // test escapeRegExp("/path/to/res?search=this.that")
    }());
    

    How to call a method daily, at specific time, in C#?

    The best method that I know of and probably the simplest is to use the Windows Task Scheduler to execute your code at a specific time of day or have you application run permanently and check for a particular time of day or write a windows service that does the same.

    'cannot open git-upload-pack' error in Eclipse when cloning or pushing git repository

    The problem can also be caused by wrong system time (by a couple of years), making the Git's certificate invalid.

    What's the best way to break from nested loops in JavaScript?

    There are many excellent solutions above. IMO, if your break conditions are exceptions, you can use try-catch:

    try{  
        for (var i in set1) {
            for (var j in set2) {
                for (var k in set3) {
                    throw error;
                }
            }
        }
    }catch (error) {
    
    }
    

    How to check if a double value has no decimal part

    You could simply do

    d % 1 == 0
    

    to check if double d is a whole.

    What is the difference between Document style and RPC style communication?

    The main scenario where JAX-WS RPC and Document style are used as follows:

    • The Remote Procedure Call (RPC) pattern is used when the consumer views the web service as a single logical application or component with encapsulated data. The request and response messages map directly to the input and output parameters of the procedure call.

      Examples of this type the RPC pattern might include a payment service or a stock quote service.

    • The document-based pattern is used in situations where the consumer views the web service as a longer running business process where the request document represents a complete unit of information. This type of web service may involve human interaction for example as with a credit application request document with a response document containing bids from lending institutions. Because longer running business processes may not be able to return the requested document immediately, the document-based pattern is more commonly found in asynchronous communication architectures. The Document/literal variation of SOAP is used to implement the document-based web service pattern.

    Reading Properties file in Java

    You can use ResourceBundle class to read the properties file.

    ResourceBundle rb = ResourceBundle.getBundle("myProp.properties");
    

    MAC addresses in JavaScript

    Nope. The reason ActiveX can do it is because ActiveX is a little application that runs on the client's machine.

    I would imagine access to such information via JavaScript would be a security vulnerability.

    enable or disable checkbox in html

    If you specify the disabled attribute then the value you give it must be disabled. (In HTML 5 you may leave off everything except the attribute value. In HTML 4 you may leave off everything except the attribute name.)

    If you do not want the control to be disabled then do not specify the attribute at all.

    Disabled:

    <input type="checkbox" disabled>
    <input type="checkbox" disabled="disabled">
    

    Enabled:

    <input type="checkbox">
    

    Invalid (but usually error recovered to be treated as disabled):

    <input type="checkbox" disabled="1">
    <input type="checkbox" disabled="true">
    <input type="checkbox" disabled="false">
    

    So, without knowing your template language, I guess you are looking for:

    <td><input type="checkbox" name="repriseCheckBox" {checkStat == 1 ? disabled : }/></td>
    

    Disable output buffering

    (I've posted a comment, but it got lost somehow. So, again:)

    1. As I noticed, CPython (at least on Linux) behaves differently depending on where the output goes. If it goes to a tty, then the output is flushed after each '\n'
      If it goes to a pipe/process, then it is buffered and you can use the flush() based solutions or the -u option recommended above.

    2. Slightly related to output buffering:
      If you iterate over the lines in the input with

      for line in sys.stdin:
      ...

    then the for implementation in CPython will collect the input for a while and then execute the loop body for a bunch of input lines. If your script is about to write output for each input line, this might look like output buffering but it's actually batching, and therefore, none of the flush(), etc. techniques will help that. Interestingly, you don't have this behaviour in pypy. To avoid this, you can use

    while True: line=sys.stdin.readline()
    ...

    Java reverse an int value without using array

    Reversing integer

      int n, reverse = 0;
      Scanner in = new Scanner(System.in);
      n = in.nextInt();
    
      while(n != 0)
      {
          reverse = reverse * 10;
          reverse = reverse + n%10;
          n = n/10;
      }
    
      System.out.println("Reverse of the number is " + reverse);
    

    CSS: On hover show and hide different div's at the same time?

    http://jsfiddle.net/MBLZx/

    Here is the code

    _x000D_
    _x000D_
     .showme{ _x000D_
       display: none;_x000D_
     }_x000D_
     .showhim:hover .showme{_x000D_
       display : block;_x000D_
     }_x000D_
     .showhim:hover .ok{_x000D_
       display : none;_x000D_
     }
    _x000D_
     <div class="showhim">_x000D_
         HOVER ME_x000D_
         <div class="showme">hai</div>_x000D_
         <div class="ok">ok</div>_x000D_
    </div>_x000D_
    _x000D_
       
    _x000D_
    _x000D_
    _x000D_

    Getting value GET OR POST variable using JavaScript?

    You can't get the value of POST variables using Javascript, although you can insert it in the document when you process the request on the server.

    <script type="text/javascript">
        window.some_variable = '<?=$_POST['some_value']?>'; // That's for a string
    </script>
    

    GET variables are available through the window.location.href, and some frameworks even have methods ready to parse them.

    Convert UTC date time to local date time

    @Adorojan's answer is almost correct. But addition of offset is not correct since offset value will be negative if browser date is ahead of GMT and vice versa. Below is the solution which I came with and is working perfectly fine for me:

    _x000D_
    _x000D_
    // Input time in UTC_x000D_
    var inputInUtc = "6/29/2011 4:52:48";_x000D_
    _x000D_
    var dateInUtc = new Date(Date.parse(inputInUtc+" UTC"));_x000D_
    //Print date in UTC time_x000D_
    document.write("Date in UTC : " + dateInUtc.toISOString()+"<br>");_x000D_
    _x000D_
    var dateInLocalTz = convertUtcToLocalTz(dateInUtc);_x000D_
    //Print date in local time_x000D_
    document.write("Date in Local : " + dateInLocalTz.toISOString());_x000D_
    _x000D_
    function convertUtcToLocalTz(dateInUtc) {_x000D_
      //Convert to local timezone_x000D_
      return new Date(dateInUtc.getTime() - dateInUtc.getTimezoneOffset()*60*1000);_x000D_
    }
    _x000D_
    _x000D_
    _x000D_

    How to store NULL values in datetime fields in MySQL?

    I had this problem on windows.

    This is the solution:

    To pass '' for NULL you should disable STRICT_MODE (which is enabled by default on Windows installations)

    BTW It's funny to pass '' for NULL. I don't know why they let this kind of behavior.

    How to post a file from a form with Axios

    This works for me, I hope helps to someone.

    var frm = $('#frm');
    let formData = new FormData(frm[0]);
    axios.post('your-url', formData)
        .then(res => {
            console.log({res});
        }).catch(err => {
            console.error({err});
        });
    

    How to pass credentials to the Send-MailMessage command for sending emails

    So..it was SSL problem. Whatever I was doing was absolutely correct. Only that I was not using the ssl option. So I added "-Usessl true" to my original command and it worked.

    The simplest way to resize an UIImage?

    Rogerio Chaves answer as a swift extension

    func scaledTo(size: CGSize) -> UIImage{
        UIGraphicsBeginImageContextWithOptions(size, false, 0.0);
        self.draw(in: CGRect(x: 0, y: 0, width: size.width, height: size.height))
        let newImage:UIImage = UIGraphicsGetImageFromCurrentImageContext()!
        UIGraphicsEndImageContext()
        return newImage
    }
    

    And also bonus

    func scaledTo(height: CGFloat) -> UIImage{
        let width = height*self.size.width/self.size.height
        return scaledTo(size: CGSize(width: width, height: height))
    }
    

    How to check if a specific key is present in a hash or not?

    In latest Ruby versions Hash instance has a key? method:

    {a: 1}.key?(:a)
    => true
    

    Be sure to use the symbol key or a string key depending on what you have in your hash:

    {'a' => 2}.key?(:a)
    => false
    

    How to write an async method with out parameter?

    Here's the code of @dcastro's answer modified for C# 7.0 with named tuples and tuple deconstruction, which streamlines the notation:

    public async void Method1()
    {
        // Version 1, named tuples:
        // just to show how it works
        /*
        var tuple = await GetDataTaskAsync();
        int op = tuple.paramOp;
        int result = tuple.paramResult;
        */
    
        // Version 2, tuple deconstruction:
        // much shorter, most elegant
        (int op, int result) = await GetDataTaskAsync();
    }
    
    public async Task<(int paramOp, int paramResult)> GetDataTaskAsync()
    {
        //...
        return (1, 2);
    }
    

    For details about the new named tuples, tuple literals and tuple deconstructions see: https://blogs.msdn.microsoft.com/dotnet/2017/03/09/new-features-in-c-7-0/

    In PowerShell, how can I test if a variable holds a numeric value?

    You can check whether the variable is a number like this: $val -is [int]

    This will work for numeric values, but not if the number is wrapped in quotes:

    1 -is [int]
    True
    "1" -is [int]
    False
    

    How do you make div elements display inline?

    You need to contain the three divs. Here is an example:

    CSS

    div.contain
    {
      margin:3%;
      border: none;
      height: auto;
      width: auto;
      float: left;
    }
    
    div.contain div
    {
      display:inline;
      width:200px;
      height:300px;
      padding: 15px;
      margin: auto;
      border:1px solid red;
      background-color:#fffff7;
      -moz-border-radius:25px; /* Firefox */
      border-radius:25px;
    }
    

    Note: border-radius attributes are optional and only work in CSS3 compliant browsers.

    HTML

    <div class="contain">
      <div>Foo</div>
    </div>
    
    <div class="contain">
      <div>Bar</div>
    </div>
    
    <div class="contain">
      <div>Baz</div>
    </div>
    

    Note that the divs 'foo' 'bar' and 'baz' are each held within the 'contain' div.

    Deleting objects from an ArrayList in Java

    Whilst this is counter intuitive this is the way that i sped up this operation by a huge amount.

    Exactly what i was doing:

    ArrayList < HashMap < String , String >> results; // This has been filled with a whole bunch of results
    

    ArrayList < HashMap < String , String > > discard = findResultsToDiscard(results);

    results.removeall(discard);

    However the remove all method was taking upwards of 6 seconds (NOT including the method to get the discard results) to remove approximately 800 results from an array of 2000 (ish).

    I tried the iterator method suggested by gustafc and others on this post.

    This did speed up the operation slightly (down to about 4 seconds) however this was still not good enough. So i tried something risky...

     ArrayList < HashMap < String, String>> results;
    
      List < Integer > noIndex = getTheDiscardedIndexs(results);
    
    for (int j = noIndex.size()-1; j >= 0; j-- ){
        results.remove(noIndex.get(j).intValue());
    }
    

    whilst the getTheDiscardedIndexs save an array of index's rather then an array of HashMaps. This it turns out sped up removing objects much quicker ( about 0.1 of a second now) and will be more memory efficient as we dont need to create a large array of results to remove.

    Hope this helps someone.

    Razor/CSHTML - Any Benefit over what we have?

    Ex Microsoft Developer's Opinion

    I worked on a core team for the MSDN website. Now, I use c# razor for ecommerce sites with my programming team and we focus heavy on jQuery front end with back end c# razor pages and LINQ-Entity memory database so the pages are 1-2 millisecond response times even on nested for loops with queries and no page caching. We don't use MVC, just plain ASP.NET with razor pages being mapped with URL Rewrite module for IIS 7, no ASPX pages or ViewState or server-side event programming at all. It doesn't have the extra (unnecessary) layers MVC puts in code constructs for the regex challenged. Less is more for us. Its all lean and mean but I give props to MVC for its testability but that's all.

    Razor pages have no event life cycle like ASPX pages. Its just rendering as one requested page. C# is such a great language and Razor gets out of its way nicely to let it do its job. The anonymous typing with generics and linq make life so easy with c# and razor pages. Using Razor pages will help you think and code lighter.

    One of the drawback of Razor and MVC is there is no ViewState-like persistence. I needed to implement a solution for that so I ended up writing a jQuery plugin for that here -> http://www.jasonsebring.com/dumbFormState which is an HTML 5 offline storage supported plugin for form state that is working in all major browsers now. It is just for form state currently but you can use window.sessionStorage or window.localStorage very simply to store any kind of state across postbacks or even page requests, I just bothered to make it autosave and namespace it based on URL and form index so you don't have to think about it.

    List<String> to ArrayList<String> conversion issue

    Cast works where the actual instance of the list is an ArrayList. If it is, say, a Vector (which is another extension of List) it will throw a ClassCastException.

    The error when changing the definition of your HashMap is due to the elements later being processed, and that process expects a method that is defined only in ArrayList. The exception tells you that it did not found the method it was looking for.

    Create a new ArrayList with the contents of the old one.

    new ArrayList<String>(myList);
    

    Directly assigning values to C Pointers

    The problem is that you're not initializing the pointer. You've created a pointer to "anywhere you want"—which could be the address of some other variable, or the middle of your code, or some memory that isn't mapped at all.

    You need to create an int variable somewhere in memory for the int * variable to point at.

    Your second example does this, but it does other things that aren't relevant here. Here's the simplest thing you need to do:

    int main(){
        int variable;
        int *ptr = &variable;
        *ptr = 20;
        printf("%d", *ptr);
        return 0;
    }
    

    Here, the int variable isn't initialized—but that's fine, because you're just going to replace whatever value was there with 20. The key is that the pointer is initialized to point to the variable. In fact, you could just allocate some raw memory to point to, if you want:

    int main(){
        void *memory = malloc(sizeof(int));
        int *ptr = (int *)memory;
        *ptr = 20;
        printf("%d", *ptr);
        free(memory);
        return 0;
    }
    

    I want to truncate a text or line with ellipsis using JavaScript

    This will put the ellipsis in the center of the line:

    function truncate( str, max, sep ) {
    
        // Default to 10 characters
        max = max || 10;
    
        var len = str.length;
        if(len > max){
    
            // Default to elipsis
            sep = sep || "...";
    
            var seplen = sep.length;
    
            // If seperator is larger than character limit,
            // well then we don't want to just show the seperator,
            // so just show right hand side of the string.
            if(seplen > max) {
                return str.substr(len - max);
            }
    
            // Half the difference between max and string length.
            // Multiply negative because small minus big.
            // Must account for length of separator too.
            var n = -0.5 * (max - len - seplen);
    
            // This gives us the centerline.
            var center = len/2;
    
            var front = str.substr(0, center - n);
            var back = str.substr(len - center + n); // without second arg, will automatically go to end of line.
    
            return front + sep + back;
    
        }
    
        return str;
    }
    
    console.log( truncate("123456789abcde") ); // 123...bcde (using built-in defaults) 
    console.log( truncate("123456789abcde", 8) ); // 12...cde (max of 8 characters) 
    console.log( truncate("123456789abcde", 12, "_") ); // 12345_9abcde (customize the separator) 
    

    For example:

    1234567890 --> 1234...8910
    

    And:

    A really long string --> A real...string
    

    Not perfect, but functional. Forgive the over-commenting... for the noobs.

    Convert datetime object to a String of date only in Python

    Another option:

    import datetime
    now=datetime.datetime.now()
    now.isoformat()
    # ouptut --> '2016-03-09T08:18:20.860968'
    

    Compiling with g++ using multiple cores

    There is no such flag, and having one runs against the Unix philosophy of having each tool perform just one function and perform it well. Spawning compiler processes is conceptually the job of the build system. What you are probably looking for is the -j (jobs) flag to GNU make, a la

    make -j4

    Or you can use pmake or similar parallel make systems.

    Proper use of 'yield return'

    Return the list directly. Benefits:

    • It's more clear
    • The list is reusable. (the iterator is not) not actually true, Thanks Jon

    You should use the iterator (yield) from when you think you probably won't have to iterate all the way to the end of the list, or when it has no end. For example, the client calling is going to be searching for the first product that satisfies some predicate, you might consider using the iterator, although that's a contrived example, and there are probably better ways to accomplish it. Basically, if you know in advance that the whole list will need to be calculated, just do it up front. If you think that it won't, then consider using the iterator version.

    Angular: How to download a file from HttpClient?

    It took me a while to implement the other responses, as I'm using Angular 8 (tested up to 10). I ended up with the following code (heavily inspired by Hasan).

    Note that for the name to be set, the header Access-Control-Expose-Headers MUST include Content-Disposition. To set this in django RF:

    http_response = HttpResponse(package, content_type='application/javascript')
    http_response['Content-Disposition'] = 'attachment; filename="{}"'.format(filename)
    http_response['Access-Control-Expose-Headers'] = "Content-Disposition"
    

    In angular:

      // component.ts
      // getFileName not necessary, you can just set this as a string if you wish
      getFileName(response: HttpResponse<Blob>) {
        let filename: string;
        try {
          const contentDisposition: string = response.headers.get('content-disposition');
          const r = /(?:filename=")(.+)(?:")/
          filename = r.exec(contentDisposition)[1];
        }
        catch (e) {
          filename = 'myfile.txt'
        }
        return filename
      }
    
      
      downloadFile() {
        this._fileService.downloadFile(this.file.uuid)
          .subscribe(
            (response: HttpResponse<Blob>) => {
              let filename: string = this.getFileName(response)
              let binaryData = [];
              binaryData.push(response.body);
              let downloadLink = document.createElement('a');
              downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, { type: 'blob' }));
              downloadLink.setAttribute('download', filename);
              document.body.appendChild(downloadLink);
              downloadLink.click();
            }
          )
      }
    
      // service.ts
      downloadFile(uuid: string) {
        return this._http.get<Blob>(`${environment.apiUrl}/api/v1/file/${uuid}/package/`, { observe: 'response', responseType: 'blob' as 'json' })
      }
    
    

    Executing a shell script from a PHP script

    Without really knowing the complexity of the setup, I like the sudo route. First, you must configure sudo to permit your webserver to sudo run the given command as root. Then, you need to have the script that the webserver shell_exec's(testscript) run the command with sudo.

    For A Debian box with Apache and sudo:

    1. Configure sudo:

      • As root, run the following to edit a new/dedicated configuration file for sudo:

        visudo -f /etc/sudoers.d/Webserver
        

        (or whatever you want to call your file in /etc/sudoers.d/)

      • Add the following to the file:

        www-data ALL = (root) NOPASSWD: <executable_file_path>
        

        where <executable_file_path> is the command that you need to be able to run as root with the full path in its name(say /bin/chown for the chown executable). If the executable will be run with the same arguments every time, you can add its arguments right after the executable file's name to further restrict its use.

        For example, say we always want to copy the same file in the /root/ directory, we would write the following:

        www-data ALL = (root) NOPASSWD: /bin/cp /root/test1 /root/test2
        
    2. Modify the script(testscript):

      Edit your script such that sudo appears before the command that requires root privileges(say sudo /bin/chown ... or sudo /bin/cp /root/test1 /root/test2). Make sure that the arguments specified in the sudo configuration file exactly match the arguments used with the executable in this file. So, for our example above, we would have the following in the script:

      sudo /bin/cp /root/test1 /root/test2
      

    If you are still getting permission denied, the script file and it's parent directories' permissions may not allow the webserver to execute the script itself. Thus, you need to move the script to a more appropriate directory and/or change the script and parent directory's permissions to allow execution by www-data(user or group), which is beyond the scope of this tutorial.

    Keep in mind:

    When configuring sudo, the objective is to permit the command in it's most restricted form. For example, instead of permitting the general use of the cp command, you only allow the cp command if the arguments are, say, /root/test1 /root/test2. This means that cp's arguments(and cp's functionality cannot be altered).

    How can I get the current PowerShell executing file?

    beware: Unlike the $PSScriptRoot and $PSCommandPath automatic variables, the PSScriptRoot and PSCommandPath properties of the $MyInvocation automatic variable contain information about the invoker or calling script, not the current script.

    e.g.

    PS C:\Users\S_ms\OneDrive\Documents> C:\Users\SP_ms\OneDrive\Documents\DPM ...
    =!C:\Users\S_ms\OneDrive\Documents\DPM.ps1
    

    ...where DPM.ps1 contains

    Write-Host ("="+($MyInvocation.PSCommandPath)+"!"+$PSCommandPath)
    

    "Expected BEGIN_OBJECT but was STRING at line 1 column 1"

    I had a similar problem recently and found an interesting solution. Basically I needed to deserialize following nested JSON String into my POJO:

    "{\"restaurant\":{\"id\":\"abc-012\",\"name\":\"good restaurant\",\"foodType\":\"American\",\"phoneNumber\":\"123-456-7890\",\"currency\":\"USD\",\"website\":\"website.com\",\"location\":{\"address\":{\"street\":\" Good Street\",\"city\":\"Good City\",\"state\":\"CA\",\"country\":\"USA\",\"postalCode\":\"12345\"},\"coordinates\":{\"latitude\":\"00.7904692\",\"longitude\":\"-000.4047208\"}},\"restaurantUser\":{\"firstName\":\"test\",\"lastName\":\"test\",\"email\":\"[email protected]\",\"title\":\"server\",\"phone\":\"0000000000\"}}}"
    

    I ended up using regex to remove the open quotes from beginning and the end of JSON and then used apache.commons unescapeJava() method to unescape it. Basically passed the unclean JSON into following method to get back a cleansed one:

    private String removeQuotesAndUnescape(String uncleanJson) {
        String noQuotes = uncleanJson.replaceAll("^\"|\"$", "");
    
        return StringEscapeUtils.unescapeJava(noQuotes);
    }
    

    then used Google GSON to parse it into my own Object:

    MyObject myObject = new.Gson().fromJson(this.removeQuotesAndUnescape(uncleanJson));
    

    Right way to reverse a pandas DataFrame?

    data.reindex(index=data.index[::-1])
    

    or simply:

    data.iloc[::-1]
    

    will reverse your data frame, if you want to have a for loop which goes from down to up you may do:

    for idx in reversed(data.index):
        print(idx, data.loc[idx, 'Even'], data.loc[idx, 'Odd'])
    

    or

    for idx in reversed(data.index):
        print(idx, data.Even[idx], data.Odd[idx])
    

    You are getting an error because reversed first calls data.__len__() which returns 6. Then it tries to call data[j - 1] for j in range(6, 0, -1), and the first call would be data[5]; but in pandas dataframe data[5] means column 5, and there is no column 5 so it will throw an exception. ( see docs )

    Override default Spring-Boot application.properties settings in Junit Test

    If you're using Spring 5.2.5 and Spring Boot 2.2.6 and want to override just a few properties instead of the whole file. You can use the new annotation: @DynamicPropertySource

    @SpringBootTest
    @Testcontainers
    class ExampleIntegrationTests {
    
        @Container
        static Neo4jContainer<?> neo4j = new Neo4jContainer<>();
    
        @DynamicPropertySource
        static void neo4jProperties(DynamicPropertyRegistry registry) {
            registry.add("spring.data.neo4j.uri", neo4j::getBoltUrl);
        }
    }
    

    Returning Promises from Vuex actions

    Just for an information on a closed topic: you don’t have to create a promise, axios returns one itself:

    Ref: https://forum.vuejs.org/t/how-to-resolve-a-promise-object-in-a-vuex-action-and-redirect-to-another-route/18254/4

    Example:

        export const loginForm = ({ commit }, data) => {
          return axios
            .post('http://localhost:8000/api/login', data)
            .then((response) => {
              commit('logUserIn', response.data);
            })
            .catch((error) => {
              commit('unAuthorisedUser', { error:error.response.data });
            })
        }
    

    Another example:

        addEmployee({ commit, state }) {       
          return insertEmployee(state.employee)
            .then(result => {
              commit('setEmployee', result.data);
              return result.data; // resolve 
            })
            .catch(err => {           
              throw err.response.data; // reject
            })
        }
    

    Another example with async-await

        async getUser({ commit }) {
            try {
                const currentUser = await axios.get('/user/current')
                commit('setUser', currentUser)
                return currentUser
            } catch (err) {
                commit('setUser', null)
                throw 'Unable to fetch current user'
            }
        },