Delve Installation on Linux 1 $ mkdir -p $GOPATH/src/github.com/myusername/project && cd "$_" 1 $ go get -u github.com/go-delve/delve/cmd/dlv Usage 1 $ cat $GOPATH/src/github.com/username/proj/main.go 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 package main import ( "fmt" "log" "net/http" "os" ) const port = "8000" func main() { http.HandleFunc("/hi", hi) fmt.Println("runing on port: " + port) log.Fatal(http.ListenAndServe(":" + port, nil)) } func hi(w http.
C++ Library Management
In general, you are going to have to end up with
Header files in a directory somewhere library files (either static libraries, or DLLs/shared objects). If the library is a header-only library like some of the boost libraries, then you won’t need this. You get hold of the library files, either by building them on your machine (typical for open source projects, and projects aimed at Linux platforms), or by downloading the pre-compiled binaries (typical for Windows libraries, particularly paid-for).
libcurl
1 #include <curl/curl.h> When using an external library you must link with it:
1 $ g++ main.cpp -lcurl
C++ 3rd party libraries
grpc/libevent/libev/libasio 实现高性能网络服务器 protobuf 数据结构序列化/反序列化,方便数据交换 LevelDB/RocksDB 嵌入式KV数据库 snappy/zlib/lz4 数据压缩,解压缩 jemalloc/tcmalloc 高效内存分配器,尤其多线程场景 jerasure Reed Sol
Create a macOS bootable ISO from the installer
First, download MacOS Mojave installer, or the MacOS Catalina installer (or the installer you wish to turn into an ISO) from the Mac App Store (direct links to most installers can be found in this article). How to download macOS from official When the “Install MacOS Mojave.app” or “Inst
Install MAC OSX 10.6 Snow Leopard on VMware Workstation 16
Requirements VMware Workstation 16 Mac OS X Snow Leopard 10.6 (10A432) (Retail DVD) iBoot 3.3.0 Create a Snow Leopard Server VM VMware workstation doesn’t officially support 10.6, only 10.6 server. To start with, create a new VM:
File -> New For the installation method, select ‘Create a custom virtual machine’ Operating system: ‘Apple OS X’ -> ‘Mac OS X 10.7’ Memory set 2 GB or 4GB. Set the number of cores per processor as 2.
jsoncpp
CMake
如果工程存在多个目录,需要确保每个要管理的目录都存在一个 CMakeLists.txt. Set a name, version, and enable languages for the entire project. 1 project(<PROJECT-NAME> [LANGUAGES] [<language-name>...]) Sets the name of the project and stores the name in the
C++ tools
Tools clang-format 格式化c++代码,同类工具还有astyle。保持代码风格统一是个好习惯。 qt creator vs以外我觉得最好用的c++ ide,代码补全质量高(基于li
kaggle
https://www.kaggle.com/stackoverflow/statsquestions
https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge
https://developer.ibm.com/exchanges/models/all/max-toxic-comment-classifier/
https://www.quora.com/Is-binary-relevance-same-as-one-vs-all
https://stackoverflow.com/questions/44674847/what-are-the-differences-between-all-these-cross-entropy-losses-in-keras-and-ten
https://vict0rs.ch/2018/06/17/multilabel-text-classification-tensorflow/
https://github.com/tensorflow/skflow/issues/113
https://towardsdatascience.com/journey-to-the-center-of-multi-label-classification-384c40229bff
https://www.reddit.com/r/MLQuestions/comments/5n82zb/loss_function_for_sparse_multilabel_classification/
Third Party Libraries of Go
General Gin: A lightweight HTTP web framework that’s great for building RESTful APIs. Echo: Another web framework for Go that’s known for its speed and ease of use. GORM: An Object-Relational Mapping (ORM) library for working with databases in a Go application. Viper: A library for managing configuration files and environment variables. Logrus: A structured logger for Go, which provides flexible logging capabilities. Gorilla Mux: A powerful HTTP router and
maven
Introduction to the Build Lifecycle Build Lifecycle Basics Maven is based around the central concept of a build lifecycle. What this means is that the process for building and distributing a particular artifact (project) is clearly defined.
There are three built-in build lifecycles: default, clean and site. The default lifecycle handles your project deployment, the clean lifecycle handles project cleaning, while the site lifecycle handles the creation of your project’s site documentation.
Packet Capture using Fiddler
Capture Traffic from iOS Device Configure Fiddler Classic Open Fiddler Classic and stop capturing. Open *Tools > Options > HTTPS* and disable *Capturing HTTPS Connects*. Close Fiddler Classic and install BouncyCastle (CertMaker.dll) from here. – this will add CertMaker.dll in your Fiddler installation, changing the way certificates are generated. With this option, Fiddler Classic will use only one root certificate and will not generate intermediate certificates for each option. After installation is complete, open Fiddler, open *Tools > Options > HTTPS* menu use *Actions > Reset all certificates* option.
Configure Git to use a proxy
Prerequisites Installing GitHub CLI archlinux:
1 sudo pacman -S github-cli windows:
1 winget install -e --id GitHub.cli Connect with SSH Checking for existing SSH keys
1 ls -al ~/.ssh Generating a new SSH key if public SSH key doesn’t exist
1 ssh-keygen -t ed25519 -C "csyezheng@gmail.com" Adding your SSH key to the ssh-agent (optional)
1 eval "$(ssh-agent -s)" 1 ssh-add ~/.ssh/id_ed25519 1 ssh-add -l Adding a new SSH key to your account
HTTPie for API testing
CLI Installation Universal
1 python -m pip install install httpie ArcoLinux
1 $ pacman -S httpie Usage Synopsis:
1 $ http [flags] [METHOD] URL [ITEM [ITEM]] 1 $ http --help Examples General Synopsis:
1 $ http [flags] [METHOD] URL [ITEM [ITEM]] Custom HTTP method, HTTP headers and JSON data:
1 $ http PUT pie.dev/put X-API-Token:123 name=John Each request item is simply a key/value pair separated with the following characters: : (headers), = (data field, e.
Dependency injection
A certain few of the GOF design patterns show up a lot, in most cases programmers use them without consciously deciding to “use a design pattern”.
singleton: most often this is nothing more than a global variable in OOP clothing - a static method to get. People will always need global variables. iterator pattern: used in almost every standard library with containers, and that’s not counting “incremented pointers”, even though that often can provide a similar interface.
DevOps
What is DevOps? DevOps (a clipped compound of “development” and “operations”) is a software engineering culture and practice that aims at unifying software development (Dev) and software operation (Ops). The main characteristic of the DevOps movement is to strongly advocate automation and monitoring at all steps of software construction, from integration, testing, releasing to deployment and infrastructure management. DevOps aims at shorter development cycles, increased deployment frequency, and more dependable
DevOps
pull this image
1 $ sudo docker pull mysql Start a mysql server instance
1 $ sudo docker run --name some-mysql -p 3310:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 logged in to the conainer
1 $ sudo docker exec -it some-mysql mysql -u root -p Install mariadb package.
1 sudo pacman -S mariadb Find out the ip of the docker container over the docker bridge:
1 sudo docker inspect some-mysql | grep IPAddress connect to mysql
DevOps books
Python for DevOps: Learn Ruthlessly Effective Automation Hands-On Docker for Microservices with Python: Design, deploy, and operate a complex system with multiple microservices using Docker and Kubernetes
Ansible for DevOps: Server and configuration management for humans
Terraform: Up & Running: Writing Infrastructure as Code
Kubernetes: Up and Running: Dive into the Future of Infrastructure
DevOps CI/CD
Gitlab https://gitlab.com/gitlab-org/gitlab
https://github.com/gitlabhq/gitlabhq
https://docs.gitlab.com/ee/README.html
Docker integration https://docs.gitlab.com/ee/ci/docker/README.html
Jenkins CI service https://docs.gitlab.com/ee/integration/jenkins.html
GitLab Jira integration https://docs.gitlab.com/ee/user/project/integrations/jira.html
Auto DevOps https://docs.gitlab.com/ee/topics/autodevops/
Auto Build Auto Build using a Dockerfile Auto Test Auto Code Quality Auto SAST Auto Secret Detection Auto Load Performance Testing Auto Deploy JIRA