SEARCH KEYWORD -- Rob Pike
How regular expression works
Rob Pike wrote 30 lines of codes to realize a simple regular expression matcher in his book The practice of Programming. This piece of code is really cool. Let's take a look at the code.Meaning of different characters.Character Meaning c General character . Match any single character ^ Match start of a string $ Match end of a string * Match zero or many occurrences of a character /*match :Test the regexp in text*/int match(char* regexp,char* text){ if(regexp[0] == '^')&n...
Regular expression,Implementation,Rob Pike,C 2012-06-25 05:23:41
Maintain multiple versions of Go in one single environment
In a development environment, there might be multiple projects going on at the same time and they may require different development environments with different versions of build tool. In many programming languages, it is possible to have multiple versions of different build tool or development tool on a single environment. For example, there can be multiple JDKs, multiple versions of Ruby using RVM. For GoLang, there is a similar tool called GVM which can also be used to maintain multiple versio...
GOLANG,GVM,GVM PKGSET,RVM 2019-11-10 00:43:47
Create temp file in Bash using mktemp and trap
When working on Linux Bash, sometimes there is need to create temporary file. A common way of creating temp file on Linux is creating some file in /tmp directory. However there is security risk when creating temp file in /tmp directory. This post will show how to securely create temp file in Linux Bash. When creating file in /tmp directory, there are some security risks. This directory can be accessed by any user on the system, any user can write data into this directory as well. The files creat...
Concurrency vs Parallelism
Concurrency and parallelism are two related concepts which deal with executing tasks "simultaneously". From Sun's Multithreaded Programming Guide: Concurrency: A condition that exists when at least two threads are making progress. A more generalized form of parallelism that can include time-slicing as a form of virtual parallelism. Parallelism: A condition that arises when at least two threads are executing simultaneously. These two definitions are too formal to be understood easily. On t...
Concurrency,Parallelism,Thread 2013-08-07 23:42:33
A guide on installing and setting up GitLab server on Ubuntu
GitHub, GitLab and BitBucket are the three most famous code hosting platform in the world. They have different features which allow teams or individuals to share code with others remotely. In case you want to build your own code hosting server so that you can host and share the code by yourself, you can install and set up your own server. In this post, we will walk you through a guide on installing and setting up GitLab server on Linux environment. gitlab is a web based code hosting tool which i...
Breaking Barriers: How 3D Printing is Democratizing Product Development
Innovation has always been the cornerstone of progress, driving societies forward and shaping our future. However, for many years, the realm of product development and manufacturing was largely restricted to big corporations with hefty budgets and access to specialized resources. This created a barrier for individuals and small businesses aspiring to bring their ideas to life. Fortunately, the advent of 3D printing technology has shattered these barriers, democratizing product development and op...
UV PRINTING,3D PRINTING 2024-03-05 08:15:32
Unix directory hierarchy history
As a beginner user of Unix or Linux, people would frequently get confused about the use of different directories of the system. For example, there is a /bin directory under root(/), it is used to store binary files. However, there are /usr/bin and /usr/local/bin under /usr which are used for storing binary files as well. Some systems even have /opt/bin. What are the differences among them? Though there are articles explaining different directories in *nix such as Filesystem Hierarchy Stan...
UNIX,LINUX,FILESSYTEM,DIRECTORY HIERARCHY,HISTORY 2016-10-21 23:47:17
Opinion: Top 5 Things I Wish Someone Told Me Before I Started My Own Business
1. However much money you think you'll need to start a business, you should take that number and double it I thought I had strategically planned every penny when I first started, but I had no idea that there would be so many unanticipated costs. Since we have a home office, I use temporary commercial office space and conference solutions for meetings and demonstrations. We always like to buy lunch for our clients, and we like them to lunch well. By the time everything is factored in, depen...
startup,own ownership,business,care 2011-08-22 12:10:18
Set file permission in Java
Prior to Java 6, there is no good solution at the Java level to provide file permission management. You need to implement your own native methods or call the Runtime.exec() to invoke the system routine such as chmod in LInux. Since Java 6, Java introduces a set of methods which can be used to set the file permission at Java level. These methods include: File.setReadable(boolean); File.setWritable(boolean); FIle.setExecutable(boolean); File.setReadable(boolean, boolean); File.setWritable(bo...
JAVA, FILE PERMISSION, POSIX,learnjava 2015-08-29 03:37:37
10 New Year’s resolutions for designers
Get the new year off to a positive start with these design resolutions Wake up. I hope you enjoyed your holiday because it’s a new year and it’s time to get back to work. We did pretty good last year. We started standing up for ourselves. We stopped working for free. We started getting our financial house in order. (Please don’t make me do the contract thing again this year.) We rediscovered typography ...
Designer,Chanllenge,2012,New UI 2012-01-18 09:11:02
RECENT
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- GoLand connect to Hologres
- A journey to investigate a goroutine leakage case
- Understanding Slice Behavior in Go
- Breaking Barriers: How 3D Printing is Democratizing Product Development
- The Power of Efficiency: 10 Practical Energy-Saving Tips for Tech Startups
- more>>