Immigration law in the United States is garbage. For many years, we did accept immigrants. Americans to be.
We were the melting pot. You came to the United States, proud of your original country, or hating it, then you work to become an American.
The stories of parents demanding that their children only speak English, to become even more American.
If you want to see a group of very proud people, just watch a group of immigrants become citizens. They work hard for that privilege.
But the Democrats had to ruin it. First, JFK signed the Community Mental Health Act. This is the act that closed mental institutions.
Yes, there were things wrong with mental health institutions. On the other hand, there are so many mentally ill people living on the streets.
But Teddy did worse. He pushed the Immigration and Nationality Act of 1965. This law abolished the discriminatory national origins quotas that favored immigrants from Northern and Western Europe.
In other words, he made a person from a third world shithole in Africa just as eligible as an Engineer from Germany. In addition, it pushed family-based immigrant visas.
The fallout from this could be anticipated, and was. Since immigration law favors family connections over what is best for the United States, family connections became much more valuable.
Before the Immigration and Nationality Act, if a couple wanted to come to the United States, both applied for visas and both worked towards becoming Citizens. Both were vetted and the needs of the United States were taken into account.
Afterward, we saw the concept of anchor immigrants. These were people who were admitted to the United States. Once established, they then sponsored other members of their family for visas.
Having a single immigrant become a citizen often leads to their spouse, their children, their parents all being granted visas. If any of those became citizens, they could sponsor even more relatives.
As more and more people applied to become citizens, the wait times started to go up. But there was a shortcut.
There are two methods of creating a family-connection. By birth, or by marriage.
Under current law, marrying a US Citizen will get you a visa, a green card, and a good start towards citizenship.
It became so common that laws were put in place to stop “sham-marriages”.
A sham-marriage is a marriage that exists only for the purpose of becoming a citizen.
How common are these sham-marriage? Common enough, that I knew of a woman who was taken advantage of by a middle eastern man.
But what are the odds of knowing two such women?
Yeah, it turns out that I know another woman that was taken in by a Muslim, once he had his citizenship, he divorced her, tried to take her kid, failed at taking the kids but was now an American Citizen.
Please leave a comment if you know anybody who was taken advantage of or who participated in a sham-marriage. I’m curious.
Back in the depths of time, a foreign national wanted to become a U.S. Citizen. He married a young woman who was a U.S. Citizen, living in the U.S.
He received his visa to come to America.
When enough time had passed, he asked his wife to sponsor him to become a U.S. citizen. She did not want to. He offered her $5000 to do so. She refused, they divorced and he left the country.
This happens more often than you might think. It happened to a friend of mine.
She wasn’t a beautiful woman, she was very plain. A man from the Middle East in the US on a student visa “fell in love” with her. He wined and dined her. Treated her in ways nobody else had.
They got married. He got his green card. They had a beautiful girl together. She sponsored him for citizenship. He became a U.S. Citizen.
He then divorced her, took their kid back to his home country. Married the girl who had been promised to him before he came to the US.
In the case of Miss Bouarfa:
Amina Bouarfa is a U. S. citizen who married Ala’a Hamayel, a noncitizen and Palestinian national. They have three young children, all of whom are U. S. citizens. A few years after they married, Bouarfa fled a visa petition on Hamayel’s behalf.
USCIS initially approved the petition. But two years later, the agency sent Bouarfa a Notice of Intent to Revoke its approval. The agency informed Bouarfa that it had uncovered evidence suggesting that, nearly a decade earlier, her husband had entered into a marriage for the purpose of evading immigration laws. According to the agency, during an interrogation, Hamayel’s ex-wife had stated that her marriage with Hamayel had been “fraudulent” and that she had asked him for $5,000 before fling a visa petition on his behalf. App. to Pet. for Cert. 14a. The agency told Bouarfa that, had it been aware of this evidence at the time it reviewed her visa petition, it never would have approved it.
—Bouarfa v. Mayorkas, 2024 604 U.S. 6
Miss Bouarfa appealed to the Board of Immigration Appeals, which agreed with the state, his visa stayed revoked. She then appealed to the Federal District Court, claiming the state lacked sufficient evidence to support their determination.
The state got the case dismissed. 8 U.S.C. §1252(a)(2)(B)(ii) has this to say:
Denials of discretionary relief
Notwithstanding any other provision of law (statutory or nonstatutory), including section 2241 of title 28, or any other habeas corpus provision, and sections 1361 and 1651 of such title, and except as provided in subparagraph (D), and regardless of whether the judgment, decision, or action is made in removal proceedings, no court shall have jurisdiction to review–
any judgment regarding the granting of relief under section 1182(h), 1182(i), 1229b, 1229c, or 1255 of this title, or
any other decision or action of the Attorney General or the Secretary of Homeland Security the authority for which is specified under this subchapter to be in the discretion of the Attorney General or the Secretary of Homeland Security, other than the granting of relief under section 1158(a) of this title.
— 8 U.S.C. §1252(a)(2)
They appealed to the Eleventh Circuit Court, which affirmed the inferior court’s ruling. His visa was still revoked.
It concluded that the text of § 1155 “makes clear that the Secretary’s authority to revoke the approval of a petition is discretionary.” Id., at 1162. In the court’s view, it made no difference that the agency rested its revocation on a determination that would have required the agency to deny the petition in the first instance. “[N]othing in the statute,” the court reasoned, “requires the Secretary to revoke the approval of a petition in any circumstance, even when the Department later determines that the approval was in error.” Ibid.
—id. at 12–13
The question the Supreme Court chose to resolve:
Whether federal courts have jurisdiction to review the Secretary’s revocation of the agency’s prior approval of a visa petition. 601 U. S. 1166 (2024).3 Bouarfa challenges the Secretary’s revocation on the assumption that the fact that her husband is not in removal proceedings does not affect the jurisdictional analysis.
—id. at 13
The problem for Bouarfa’s argument is that § 1154(c) nowhere suggests that its command extends beyond the point of approval. Nothing in the provision mentions revocation. And we need not guess in what situations Congress wanted the Secretary to revoke the agency’s approval, because Congress answered that question directly: The Secretary “may” do so whenever he “deems” there to be “good and sufficient cause.” § 1155. This specific grant of discretion to revoke forecloses the argument that Congress silently mandated revocation in certain situations.
—id. at 16
In § 1155, Congress granted the Secretary broad authority to revoke an approved visa petition “at any time, for what he deems to be good and sufficient cause.” Such a revocation is thus “in the discretion of” the agency. § 1252(a)(2)(B)(ii). Where § 1252(a)(2)(B)(ii) applies, then, it bars judicial review of the Secretary’s revocation under § 1155. Therefore, we affirm the judgment of the Court of Appeals.
It is so ordered.
—id. at 19
Conclusion
Once the back and forth with the inferior courts is completed, Khalil will lose.
The Supreme Court found, 9-0, that the Secretary has the choice to revoke any visa or green card for anything he feels is sufficient. Judicial review is not allowed under U.S. Law.
The ONLY challenge they would have is a Constitutional challenge, which they have not really made.
Networking should be simple. Even when it was big, it was simple. Plug the wires in correctly, assign the IP address your system administrator gave you, and you are up and running on the internet.
We built each node on the net to be able to withstand attacks. Each node was a fortress.
But when we put Win95 machines on the net, that changed.
The mean time to having a Win95 machine compromised was less than 72 hours.
Today, an unhardened Windows box has about an hour before it is compromised. Many IoT devices have windows in the 5 minute range.
To “fix” this issue, we introduced firewalls. A firewall examines every packet that enters, deciding if the packet should be allowed forward.
Since everything was in plain text, it was easy to examine a packet and make decisions. This “fixed” the Windows Vulnerability issue.
The next complication came about because Jon Postel didn’t dream big enough. His belief was that there would never be more than a few thousand machines on the Internet.
This was an important argument as it shaped the new Internet Protocol. He wanted 2 bytes (16 bits) for host addressing. Mike wanted more. He argued that there would be 100s of thousands of machines on the Internet.
They compromised on a 4 byte, 32 bit address, or around 4 billion addresses. But since the address space was going to be sparse, the actual number would be less than that. Much less than that.
This meant that there was a limit on the number of networks available at a time when we needed more and more networks.
Add to that, we had homes that suddenly had more than one device on the Internet. There were sometimes two or even three devices in a single home.
Today, a normal home will have a dozen or more devices with an internet address within their home.
This led to the sharing of IP addresses. This required Network Address Translation.
stateDiagram-v2
direction LR
classDef outside fill:#f00
classDef both fill:orange
classDef inside fill:green
Internet:::outside --> DataCenter
DataCenter:::outside --> Firewall
Firewall:::both --> Server
class Server inside
Here we see that we have an outside world which is dangerous red. The Firewall exists on both and creates safety for our Server in green.
stateDiagram-v2
direction LR
classDef outside fill:#f00
classDef both fill:orange
classDef inside fill:green
Internet:::outside --> DataCenter
DataCenter:::outside --> Firewall
Firewall:::both --> LoadBalancer
state LoadBalancer {
Server1
Server2
}
class LoadBalancer inside
Server1 and Server2 are part of the compute cluster. The load balancer sends traffic to the servers in some balanced way.
The firewall sends traffic to the load balancer. The load balancer sends traffic in a balanced fashion to Ingress 1 or Ingress 2. This configuration means that either Ingress 1 or Ingress 2 can be go offline and the cluster continues to work.
The actual structure is that the Ingress process runs on the different servers. It is normal to have 3 ingress processes running on 3 servers, with more servers hosting other processes.
So what’s so complicated? What’s complicated is that each of the devices in that path must be configured correctly. Which gets more complex than it should be.
The path packets travel is configured by routing configurations. This is done by BGP outside the Data Center and OSPF inside the Data Center. The Firewall must be configured to only pass the traffic it is supposed to.
Firewall rules grow and can be complex. My firewall rules exist as “If it ain’t broken, don’t fix it” It is always a concern when modifying firewall rules. It is not unheard of to lock yourself out of your firewall. Or to bring down a thousand sites from one bad configuration rule in a firewall.
The load balancer must also be configured correctly. In our case, our load balancers offload SSL/TLS work to allow routing decisions. It then uses internal SSL/TLS for all traffic within the cluster.
The Ingress processes live on a virtual network for intra-cluster communications and on the load balancer network for communications with the load balancers.
Each of the compute instances communicates on the intra-cluster network only.
All of this is wonderful. Until you start attempting to figure out how to get the correct packets to the correct servers.
The firewall is based on pfSense. The load balancer is based on HAProxy. The ingress services are provided by Nginx. The intra-cluster networking and containerizing is provided by docker/K8S.
The issue of the day, if I upload large files via the load balancer, it fails. Implying that HAProxy is the issue. Uploading to the ingress services directly works.
What is the judicial branch of the U.S. Government?
The judicial Power of the United States, shall be vested in one supreme Court, and in such inferior Courts as the Congress may from time to time ordain and establish. The Judges, both of the supreme and inferior Courts, shall hold their Offices during good Behaviour, and shall at stated Times, receive for their Services, a Compensation, which shall not be diminished during their Continuance in Office.
—Bouarfa v. Mayorkas, 2024 604 U.S. 6
There is only one court defined in the Constitution, all the others are created by Congress and are inferior to the Supreme Court.
The Congress can establish courts, which implies that they can delete courts. This has happened in the past, I believe. We have been looking to split the Ninth Circuit into multiple circuits for several years now.
Neither the Congress nor the President can reduce the salary for Judges. They can only increase their salaries.
There are two ways to remove a federal judge from inferior court: 1) Impeach them, 2) Find that they are not exhibiting “good behaviour”.
While the Constitution established the Supreme Court and authorized inferior courts, it doesn’t, explicitly, say what authority over the other two branches it has.
The President has the power of the veto. He has command of the military and the tools required to fulfill his responsibilities as the head of the executive branch.
The Congress has the power of the purse and the ability to create laws. They can override a presidential veto.
Our government was set up to be at odds with itself. To be inefficient in creating laws. No man’s home or wallet is safe when Congress is in session.
The power of the Court came when they took it in Marbury. They didn’t justify that power grab under the Constitution. They simply declared that it is the job of the courts to say what the law is.
As part of that task, they are now empowered (authorized) to judge the Constitutionality of any law.
The Supreme Court has put guard rails on that power. While we heard it in Bruen and in Heller, it is a consistent message, first look at the plain text of the Constitution. If the proposed conduct implicates the plain text of the Constitution, then the burden shifts to the Government to show this Nation’s historical tradition of equivalent regulation.
Yes, that sort of language is in many Supreme Court opinions, not just Second Amendment Opinions. Which is part of the reason the legal people of the Second Amendment Community get upset with rogue inferior courts.
The Trump Administration’s Attack on Judges
Maybe we should say, “rogue, inferior court, judges.” These are judges, sometimes making up an entire court, that seem to feel that they have the power to overturn presidential orders.
Unfortunately, these judges step outside the guard rails constantly.
Consider just one question, “Does the President have the Constitutional authority to hire and fire personal within the executive branch?”
When we look at the plain text of the Constitution, we find that he does have the authority to hire. Sometimes that requires the Advice and Consent of the Senate. Other times it does not.
With the authority to hire comes the ancillary authority to fire. This is the same as the First Amendment’s “freedom of the press” including the right of the press to purchase ink and to be free of targeted taxation.
Trump 2.0 came into office knowing that he would be subject to lawfare. The left has already played that hand.
When I read the filings of the state (good guys), it is obvious that they were prepared for these court cases. They have been extraordinarily careful to make sure they follow the court’s orders without letting the court win.
Battle Is Waged
There seems to be credible evidence that there are people in congress that are looking to start impeachment proceedings against those judges that they feel are going rogue. Chief Justice Roberts issued a statement that impeachment wasn’t the correct path to follow when a court’s ruling goes against you. Still, the undertones suggest that impeachments are coming.
Some lawyers are suggesting going after the good behavior aspect. If the judge is not staying within the guard rails created by the Supreme Court, they are not exhibiting good behavior. This means they can be removed. Is there good case law for this? I do not know. I suspect there is not.
Regardless, there are judges out there that are seeing that they are getting into the “FO” stage of the equation.
Enter Judge Jesse M. Furman
Judge Furman is a member of the Southern District of New York District Court. When Khalil was detained, then transported before being deported, he was the lucky judge to get the case.
The case is a writ of habeas corpus.
A writ of habeas corpus orders the custodian of an individual in custody to produce the individual before the court to make an inquiry concerning his or her detention, to appear for prosecution (ad prosequendum) or to appear to testify (ad testificandum). State courts may issue such writs to prisoner custodians to produce federal prisoners.
— U.S. Marshals Service
The gist, in this case, is that the lawyers for Khalil want him in S.D.N.Y, and they want the court to have power over him. Currently, the federal government has power over him.
Unfortunately for Khalil, the state hit hard and fast. They detained Khalil, took him to the ICE Field Office in Manhattan for processing. The ICE Field Office does not have facilities for holding prisoners for more than 12 hours. Since he couldn’t hold him there, so they transferred him.
He was transferred to the Elizabeth Detention Facility in Newark, New Jersey. Normally, this is where he would have been held until deported or released.
But, the Elizabeth Detention Facility was experiencing and continues to experience a bedbug issue that prevented [them] from accepting detainees as full transfers. In short, he couldn’t stay there.
This was known before Khalil was detained. They had transport ready and Khalil was on his way to the Louisiana Detention Facility in Jena, Louisiana shortly after he arrived in New Jersey.
This was happening so rapidly that the Judge is talking about where Khalil was at any particular minute. In some cases, he was removed from jurisdictions only a few minutes before court orders would have stopped the transfer.
Now Khalil is in Louisiana. The S.D.N.Y. did not have jurisdiction when the case was opened. That would have been in the District of New Jersey. By the time everything was sorted out, he was in the Western District of Louisiana.
This judge could claim he had jurisdiction and demand the return of Khalil. This would be fought, and is being fought. He is unlikely to win on the merits. It could be years before the Supreme Court makes a final decision. During that time, Khalil would be behind bars.
If the judge dismissed the case, his earlier TRO would be vacated and Khalil would be deported.
If the judge transferred the case to the W.D. of Louisiana, it is likely that the courts in that jurisdiction would not be issuing orders overriding the President.
Here is the thing. The Trump admin is going to put the same motions for dismissal or transfer in front of the judge in New Jersey.
How does a judge in New York decide that they don’t have jurisdiction because the person wasn’t in the district when the case was filed, believe that the case belongs in a jurisdiction where the complaint was never filed and where the person is currently being detained?
Bluntly, I think the judge in New York took a look at what was happening and decided, “I don’t want any part of this mess.” Then punted.
When my guy does something I like, I do cheer. When their guy does something I dislike, I’ll boo.
But what happens when my guy does something I like, but which I would boo if their guy did?
I worry about this.
In addition, I look at how I would react if something my guy is doing today, were to be done by their guy tomorrow. I need to be willing to accept both theirs and mine doing this thing.
I was extremely upset when Joe Biden’s masters were ignoring Supreme Court rulings. Is my guy ignoring court rulings?
One of the things to understand is how our Constitutional Republic works. We, The People, have rights. Our state has rights derived from The People of the state.
The federal government and the state government have power. They have power by existing.
The federal Constitution grants authority to the federal government to do certain things, and only those things.
Consider the following, a squad of cops breaks down your door, throws you in irons, transports you to the jail and locks the cage.
Under our Constitution, the cops only have the authority to do so if they have a warrant. If they don’t have that warrant, they do not have the authority to detain you. Did they have the power to do so? Obviously, they did because they did detain you, and they did throw you in jail.
The Supreme Court was not granted any authority under our Constitution. Our Constitution established a Supreme Court, but they didn’t explicitly give the Supreme Court any Authority.
With —Bouarfa v. Mayorkas, 2024 604 U.S. 6 the Supreme Court took the authority to arbitrate what was and what was not Constitutional.
We, as a country, have accepted this.
When we look at the courts, they have significant authority, they do not always have the power to enforce their authority.
When the judge looks down from his bench and orders a person into jail, it is Law Enforcement that executes that order. In some cases, the court employs those people. In federal court, the enforcement power rests in the executive branch, such as the federal marshals, who report to DoJ.
So, in the cases I’m looking at, the court has the authority but lacks the power.
Tren de Aragua(TdA)
What is due process as it relates to TdA?
We start with what due process do you have? You are stopped while walking down the street and the cop demands your papers.
You do not have to produce papers when a cop demands them (IANAL). In some states, you might have to identify yourself, but that does not require you to provide papers.
If you have followed your state’s laws regarding providing identification, what next?
Go watch some YouTube videos and reach out to a lawyer in your state. I have nothing to say because I just don’t know.
As a citizen, you have the right to a jury of your peers. You have the right to due process. You have the right to legal representation.
They do not have the authority to just disappear you into a cell.
You will get your day in court. If you are not found guilty, you will be released. It can be expensive, but you don’t get thrown into a cage without due process.
But what if you are here illegally?
If you are an illegal alien, then they only need to prove that you are here illegally. Once they prove that, you can be deported.
The question arises, who do they have to prove legality to? To a judge? To some nameless official? To their drinking buddies? Who?
In the case of TdA and other gangs, like MS-13, they self identify as belonging to those gangs. As part of those gangs, they are not welcome in the United States. Because they are not wanted, they do not have visa or green cards. Since they are not here legally, they can be deported.
But what if they do have a visa or green card?
Simple, those can be revoked. Being a member of such a gang is enough of a reason for the State Department to revoke a visa and/or a green card.
Once they are deported, it becomes the responsibility of the receiving country to deal with those deported.
Well, we decided to fly TdA members to El Salvador. There is an interesting law in El Salvador. According to one source, TdA are by definition criminals in El Salvador.
Under El Salvadorian law, any member of TdA can be arrested and jailed.
When these deportees arrived in El Salvador, the El Salvadorian officials determined if they were indeed members of TdA.
Since they were in El Salvador, they are, by definition, criminals. Thus, they can be jailed.
They were then in processed and get to stay in the comfort of El Salvador super max prison.
Was due process served? Yes. Could it have been abused? Yes. Will it be abused when the democrats regain power? Yes, it will.
How do I know that it will be abused by democrats? Because they did so over the last four years.
Frank Sinatra was upset in Guys and Dolls because Marlon Brando, as Guy Masterson, was the one to sing “Luck, Be a Lady”.
Marlon was not a singer. He likely sang as badly as I, or worse. The claim was that his version of “Luck, Be a Lady” was made by cutting multiple takes together. Some cuts being only a word or less.
This was obviously frustrating to Frank, who is a great singer. Frank went on to make the song his own.
In 1969, Paint Your Wagon was released, starring Clint Eastwood and Lee Marvin. Both men sung their songs. They are not great singers. Nevertheless, the results were good.
When working with git, there are several areas we might be discussing. The most important areas are “working directory”, “staging”, “local repository”, and “remote repository”.
A repository without a working directory is called a “bare repository”.
The working directory is a location where your files live, with a reference back to the repository. It is possible to extract the files without keeping a reference to the repository.
Most working directories, and what we will assume for our discussion, have the bare repository within the .git directory (folder).
A remote repository is normally a bare repository located somewhere apart from your local working directory. This could be a different directory on the local machine, or it could be located on a remote, network connected system.
Creating a Local Version of a Remote Repository
This is what the remote repository looks like. A pretty simple version.
We don’t copy it, we clone it. The implication is that what we have in the local version is the same as what is in the remote version.
git clone ssh:git@github.com/author/book.git
This creates a directory named “book”, it clones/copies the bare repository from GitHub and places it in “book/.git”. It creates a “remote” reference within “book/.git/refs/remotes” named “origin”. With “origin” it creates a copy of all the branches that are in the remote repository, in our example, just “master”
The clone command then checks out the working directory into “books”. This would be the files “chapOne.md”, “chapTwo.md”, and “chapThree.md”. It creates a file in “books/.git/refs/heads” named master with the commit hash (identifier) of “0ccd79797”.
These two look the same, but notice that the last two commits have different values/hashes. This is because they are different.
Since you are done with your edit, you attempt to send your changes back to the remote repository named “origin” via a push command. git push origin main This fails because there would be two versions of the repository if you did this, there can be only one.
To correct this, you first fetch an updated copy of repo.
We do another fetch, there is nothing to do as nothing else has been added. We then push our commits back to the remote repository. git push origin main
Because I’m not the program, there might be some small ordering issues in the final commit.
The point in all of this is that all of this magic happens behind the scenes. The program can do most merges with no assistance from you. In the rare cases where there is a merge conflict, it is relatively easy to manual merge the changes.
A merge conflict happens when two commits modify the same line of code. In your version, you had “Ciliorys hat” originally. You modified it to be “Billy-Bobs hat” Your editor had changed it to “Cilory’s hat”.
Now you have two edits to the same line. Git says, “You figure it out.” and shows you the two versions of the line, in context. You can pick one version or the other, or put in an entirely different version.
You choose the third option and put “Billy-Bob’s hat”. The world is good.
Conclusion
git is powerful. This discussion barely touches on the power of git.
There is an entire process of modifying code by “forking” a repository. When you are finished with your modifications, you can contribute them back to the original repository with a “Pull Request”.
Git has multiple methods of inserting code review and other tools into the process.
It is so powerful, It can be used to create a full wiki, on the fly. The raw files are served as wiki pages.
There is a method of doing a binary subdivision to find bugs that were introduced in the past. There is a method of tracking who introduced an errant line of code.
There are tools for pulling a commit out of the middle of a branch and applying it to a different branch, without taking the rest of the modifications.
In general, there only about a dozen commands that a user needs to know to work with git.
If you would like to work with git, there are communities ready to help you, there are multiple cloud providers that will allow you to host your repo on the web.
My introduction to source code control came at University. The name of the program was “update”. It took an “update deck” which described lines to remove, by line number, and lines of code to insert.
This format allowed us to inspect the code that was actually being changed, as well as the surrounding code. Every line of code I wrote for the Systems Group that was installed went through three levels of code review and QA testing before going live in the system.
Having those change decks helped in the review process. As a side note, the author’s initials were attached as a note to the right of every line of code we modified. Easy stuff.
After a change deck was accepted, it became part of the “installed version” of the software.
One of the powerful features of working with change decks is that two (or more) people could be working on the same piece of code and unless their changes overlapped, they could be applied independently.
RCS
When I left University, I started working with the BRL CAD project. This introduced me to the RCS system.
RCS was something like “update” but not quite. And you didn’t think in terms of “change decks”. That was handled behind the scenes.
You had a directory (folder) in which you had your code. You also had hidden files that stored the RCS history of the code.
By default, files were stored read-only. You could read them, you could compile from them, but you could not modify them.
To modify a file, you needed to first check out the file. When you checked out a file, it was “locked” to you and nobody else was allowed to modify the file.
You made the changes you wanted to the checked out files, then you tested. When you were happy that your code worked, you checked in the file you had checked out.
This is great when modifying a single file, but if you are modifying more than one file to accomplish your fix or enhancement, you have to check in each file in a separate operation.
There was no linkage between the files to indicate that all the changed files needed to be processed as a gestalt.
When you were ready to make a release, you had to do some magic to mark each file as being part of that particular tag. Then, at a later time, you could check out that entire tree and work on it as if it was the day of the release.
RCS did magic behind the scenes to figure out the “delta” between the checked out code and the original. This was equivalent to the “update deck” I was used to from University Days.
To work in a collaborative methodology, you would have a single “working directory” with everybody on the team having read/write privileges to the directory. If you were working across multiple machines, each machine had to use the same shared directory via a network file system. (NFS at the time)
At one point, I was working on BRL CAD on my home machine. I did not have enough space on the drive to copy the entire RCS tree to my local drive, so I was using NFS over a 28.8k dial-up modem.
Compile times ran about 3 days. And if anybody changed one of the “big” include files, I would have to start the build over again.
If you were working on a copy of the source code, you would extract a patch file from RCS to submit back to the master RCS directory.
It felt easy at the time, but it wasn’t as easy as it seamed. We just didn’t know what we didn’t know.
CVS
CVS was the first major paradigm change in source code control for us. The basic use was the same as with RCS, but they had changed the layout.
You now had an explicit directory, CVS, which contained the history files. When you checked out files, the lock was done in the CVS directory.
In addition, you could check out the files read-only (no lock) remotely from the CVS directories and then checkout with a lock, edit on the remote system, then check in your changes.
This was a game changer. We no longer required a network file systems.
Unfortunately, we had some of the same issues as we had with RCS. The main one being that only one person could check out/lock a file at a time. With team members working nearly 24 hours per day, it was a pain when the morning dude wasn’t available at 2237 to release a lock.
SVN
SVN solved most of the known problems with CVS. It had the concept of a remote repository, it allowed multiple people to work on the same file at the same time. It had better branch and tag capabilities.
All in all, it was a vast improvement.
The two primary weaknesses were no gestalt for files and very slow check out of branches and tags away from the main trunk.
I remember using SVN. I had to use it just a couple of weeks ago. I don’t think I ever fell in love with it. It was a step-wise improvement over CSV.
git
Git is my favorite source control system. I understand that there is another SCS, but I can recall its name at this point. I’ve not used it.
Git changed the paradigm we use for changing the repository. Whereas all the previously discussed SCS’s work on a file by file basis, git works on a “commit” basis.
Even if you are working in a collaborative environment, you work on your personal repository (repo). We will get to collaborative environments shortly.
In the simplest form, you create a “working directory” which you populate with your code. That could be a book, a program, an application, or a web page. It doesn’t matter. Git doesn’t care what the files contain, only that they be text files.
Git can work with binary files, but that is not our focus.
Once you have your initial contents, you create your repo with git init. With this magic command, git creates all the required files to track the history of your project.
Let’s say you are working on a book. You have placed each chapter of the book in a separate file. One of your characters is named Cillary Hlinton. Your editor tells you that the name is just too close to a real person, and he would rather not be sued. He asks you to change the character’s name.
Under update, RCS, CVS and SVN, you would check out individual files, change the name to “Billy Boy” and then check in your changes. When you have made all the changes, you are happy.
The issue is that there Chapter One is on revision 44, Chapter Two is on revision 37, and Chapter Three is on revision 48. How do you figure out the revision from just before you made the changes?
With git, you do not check out files and lock them. Instead, all files are ready for you to modify. You just edit the files and change the name.
Now you have chapters one, two, and three that have been modified. You group them into a single commit by adding them to the staging area. git add chap1.md chap2.md chap3.md
You can do this on one git add or multiples, in one session or multiple sessions. At some point you will be satisfied with your collection of changed files.
At that point, you commit the changes. You will be required to supply a message.
Each of the following circles represents a commit.
Before Name change
After the name change
If we want to see the version before the name change, we can check out commit 4. When we do, all the files are changed back to the version before adding your name changes.
This makes it easy to find one particular point where the state of the book is one way and in the next commit, all the changes have taken place across the entire book.
The other major improvement that git brought was fast branches.
Branches
Here we see two branches added to the repository. The first “HEAD” is a special branch. It represents the commit associated with the working directory. It is manipulated implicitly instead of explicitly.
“master” is the default branch until “rrracist” was applied, so some repos now use “main” instead of “master” branch.
This ability to create branches rapidly allows us to make and destroy branches at will.
We are going to create a new branch, “editor” for our editor to work on. Meanwhile, you are continuing work on chapter four.
Editor and Master branches
And here is where git shows another of its powers, the merge. With the ‘master’ branch checked out, we merge the editor branch, fixing all the little grammar and spelling errors. git checkout master; git merge master
After Merge
With this merge completed, the master branch contains all the work done in the editor branch, but the editor branch does not have any of the new work done on master. To synchronize the editor branch with the master branch we do git checkout editor; git merge master.
After merging master into editor branches
If there is no more editing to be done, it is acceptable to delete the editor branch. No code will be lost.
Because the ability to branch and merge is so quick and powerful, it is normal procedure to start a new branch for each issue being addressed in a project. When the issue is resolved, the new code is merged into master or discarded.
Remote Repositories
Is a tale for another time.
Conclusion
If you can use a source code control system to track your work and changes, do so. It makes life so much easier in the long term.
who has been convicted in any court of, a crime punishable by imprisonment for a term exceeding one year;
who is a fugitive from justice;
who is an unlawful user of or addicted to any controlled substance (as defined in section 102 of the Controlled Substances Act (21 U.S.C. §802));
who has been adjudicated as a mental defective or who has been committed to a mental institution;
who, being an alien-
is illegally or unlawfully in the United States; or
(except as provided in subsection (y)(2), has been admitted to the United States under a nonimmigrant visa (as that term is defined in section 101(a)(26) of the Immigration and Nationality Act (8 U.S.C. 1101(a)(26)));
who has been discharged from the Armed Forces under dishonorable conditions;
who, having been a citizen of the United States, has renounced his citizenship;
who is subject to a court order that-
was issued after a hearing of which such person received actual notice, and at which such person had an opportunity to participate;
restrains such person from harassing, stalking, or threatening an intimate partner of such person or child of such intimate partner or person, or engaging in other conduct that would place an intimate partner in reasonable fear of bodily injury to the partner or child; and
includes a finding that such person represents a credible threat to the physical safety of such intimate partner or child; or
by its terms explicitly prohibits the use, attempted use, or threatened use of physical force against such intimate partner or child that would reasonably be expected to cause bodily injury; or
who has been convicted in any court of a misdemeanor crime of domestic violence,
to ship or transport in interstate or foreign commerce, or possess in or affecting commerce, any firearm or ammunition; or to receive any firearm or ammunition which has been shipped or transported in interstate or foreign commerce.
— 18 U.S.C. §922(g) 2025-03-14
This is the current version of section §922(g). The word “felon” does not appear. All definitions are included within the list.
As you read on, notice that we have gone from actually crossing state lines to “affecting commerce”. This is a huge power grab by the federal government. The Constitution authorizes them to regulate interstate commerce.
The power grab is that they now claim the can regulate anything that might affect interstate commerce.
This is not how it started.
The term ‘indictment’ includes an indictment or an information in any court under which a crime punishable by imprisonment for a term exceeding one year may be prosecuted
— §921 in 1968
It shall be unlawful for any licensed importer, licensed manufacturer, or licensed dealer to sell or deliver—
any firearm to any individual who the licensee knows or has reasonable cause to believe is less than twenty-one years of age, if the firearm is other than a shotgun or rifle.
any firearm to any person in any State where the purchase or possession by such person of such firearm would be in violation of any State law or any published ordinance applicable at the place of sale, delivery or other disposition, or in the locality in which such person resides unless the licensee knows or has reasonable cause to believe that the purchase or possession would not be in violation of such State law or such ordinance.
any firearm to any person who the licensee knows or has reasonable cause to believe does not reside in (or if the person is a corporation or other business entity, does not maintain a place of business in) the State in which the licensee’s place of business is located; except that this paragraph shall not apply in the case of a shotgun or rifle.
to any person any destructive device, machine gun (as defined in section 5848 of the Internal Revenue Code of 1954), short-barreled shotgun, or short-barreled rifle, unless he has in his possession a sworn statement executed by the principal law enforcement officer of the locality wherein the purchaser or person to whom it is otherwise disposed of resides, attesting that there is no provision of law, regulation, or ordinance which would be violated by such person’s receipt or possession thereof, and that he is satisfied that it is intended by such person for lawful purposes; and such sworn statement shall be retained by the licensee as a part of the records required to be kept under the provisions of this chapter.
any firearm to any person unless the licensee notes in his records required to be kept pursuant to section 923 of this chapter, the name, age, and place of residence of such person if the person is an individual, or the identity and principal and local places of business of such person if the person is a corporation or other business entity.
— §922 as of 1968
This does not seem to include as much as the current law does.
In October 1968, the law changed
The term ‘crime punishable by imprisonment for a term exceeding one year’ shall not include (A) any Federal or State offenses pertaining to antitrust violations, unfair trade practices, restraints of trade, or other similar offenses relating to the regulation of business practices as the Secretary may by regulation designate, or (B) any State offense (other than one involving a firearm or explosive) classified by the laws of the State as a misdemeanor and punishable by a term of imprisonment of two years or less.
— §921 — October 1968
Here we see that they have explicitly excluded misdemeanors with possible imprisonment of less than two years. The old version was greater than one year.
It shall be unlawful for any person—
who is under indictment for, or who has been convicted in any court of, a crime punishable by imprisonment for a term exceeding one year;
who is a fugitive from justice;
who is an unlawful user of or addicted to marihuana or any depressant or stimulant drug (as defined in section 201 (v) of the Federal Food, Drug, and Cosmetic Act) or narcotic drug (as defined in section 4731(a) of the Internal Revenue Code of 1954); or
who has been adjudicated as a mental defective or who has been committed to a mental institution;
to ship or transport any firearm or ammunition in interstate or foreign commerce.
It shall be unlawful for any person—
who is under indictment for, or who has been convicted in any court of, a crime punishable by imprisonment for a term exceeding one year;
who is a fugitive from justice
who is an unlawful user of or addicted to marihuana or any depressant or stimulant drug (as defined in section 201 (v) of the Federal Food, Drug, and Cosmetic Act) or narcotic drug (as defined in section 4731 (a) of the Internal Revenue Code of 1954); or
who has been adjudicated as a mental defective or who has been committed to any mental institution;
to receive any firearm or ammunition which has been shipped or transported in interstate or foreign commerce.
— §922 — October 1968
Read that last line carefully. In November 1968, a person who was a “prohibited person” could no receive any firearm or ammunition which had been shipped in interstate or foreign commerce. They could still keep and bear arms. They could not buy or be given guns that crossed state lines.
This means that it was perfectly legal for a prohibited person to keep all the firearms they owned before becoming prohibited and they could manufacture firearms for their use. All legal.
It also meant, that if they were to buy direct from a manufacturer, that would be legal. For example, if they lived in New Hampshire, they could go to the Sig Store and purchase a gun manufactured by Sig in NH.
It shall be unlawful for any person—
who has been convicted in any court of, a crime punishable by imprisonment for a term exceeding one year;
who is a fugitive from justice;
who is an unlawful user of or addicted to any controlled substance (as defined in §102 of the Controlled Substances Act (21 U.S.C. §802)
who has been adjudicated as a mental defective or who has been committed to a mental institution;
who, being an alien, is illegally or unlawfully in the United States;
who has been discharged from the Armed Forces under dishonorable conditions; or
who, having been a citizen of the United States, has renounced his citizenship
to ship or transport in interstate or foreign commerce, or possess in or affecting commerce, any firearm or ammunition; or to receive any firearm or ammunition which has been shipped or transported in interstate or foreign commerce
— §922 — May 1986
Section (h) was rewritten to reference section (g) for who was prohibited. We also see that it is no longer receiving a firearm that is a crime, it is in possessing.
We still see that the limitation is on firearms that cross state lines. We see this in many federal laws. They will reference something crossing state lines being regulated. This is because that is all the Constitution authorizes the federal government to regulate.
These changes were part of “Firearms Owners’ Protection Act”. I just love it when something that is about protecting my rights adds more limits on rights. Yeah, I know, bad people.
In 1996, §§ 921-922 were amended to add definitions and text to prohibit who has been convicted in any court of a misdemeanor crime of domestic violence..
In 1998, in an “Omnibus Consolidated Appropriations” bill, they changed the definition of an illegal alien.
Conclusion
1) reading lawsuits is easy compared to reading “Public Laws”. They write bills like patch files. Instead of showing us the new version with strike through and underline to show removed and new text, they say things like (I) by inserting “transfer of a firearm to or” before “receipt”; and (II) by striking “(g) or (n)” and inserting “(d), (g), or (n) (as applicable)”.
I read that stuff all the time, but I have tools that make it easy to see the changes.
2) The law expands little by little, infringing more and more. What starts with something that feels reasonable ends with something that is totally unconstitutional.
This is an interesting and challenging case, for me.
This is a Constitutional challenge to Mahmoud being detained and then deported. His claim is that this is a violation of his First and Fifth Amendment protected rights. Because it is a violation of his rights, the court should grant him relief.
Mahmoud is an Arab that claims to be a Palestinian. He entered the United States in December 2022 on a student visa to study for a Master’s degree at Columbia University in New York. He completed that degree in December 2024 and is going to graduate in May 2025. He married in November 2024 and got a green card.
He was granted a green card because he was married to a US citizen. He is still an alien, just not illegal. He has not overstayed his visa, nor is he required to leave when his visa expires.
His lawyer describes his actions in this way:
As a Palestinian, M.K. has felt compelled to be an outspoken advocate for Palestinian human rights and more recently, to speak out against Israel’s genocide in Gaza and the role of Columbia University in financing and in other ways facilitating the genocide. M.K. is committed to being a voice for his People, and calling on the rest of the world to stop providing weapons and support to enable the genocide in contravention with international law.
This describes his actions as speech. Regardless of how reprehensible that speech might be, it is still protected. The First Amendment protects reprehensible speech, not just the words we want to hear. It is easy to believe in “free speech” if the only allowed speech is that which we agree with.
This case is seeking the following relief:
Assume jurisdiction over this matter
Declare that the state violated Mahmoud’s First amendment and Fifth Amendment protected rights
To keep Mahmoud in New York
Release Mahmoud
Pay Mahmoud’s legal fees
Item 3 is mooted because Mahmoud was out of New York before the case was filed. In a later filing they requested that he be returned to New York.
So we look at the Constitutional challenge. One of the things to note is that not all the Constitution applies to everyone. Some apply to Citizens and some apply to “the people”. The rights limited to citizens are called out by the term “citizen”. The rest of the time the founders use the terms “the people”, “person”, and “the accused.”
The Supreme Court has issued many opinions that restrict “The People” to those with a strong connection to the community politic.
With these in mind, it seems clear that Mahmoud is a member of the people. His rights are protected by most of the Constitution.
Is he challenging a federal law prohibiting the free exercise of or abridgment of his speech? Not directly.
Instead, he challenges the law as applied to him, His claim is that he can’t speak while detained and that the threat of detention has a chilling effect on his ability to speak freely.
The state has not justified his detention in court documents — yet. Instead, they are fighting the most relevant parts first. Bluntly, I don’t care if this asshole is deported or rotting in a jail cell. He’s not out there intimidating the people of the United States.
What the state did was they revoked his visa and his green card.
When can a green card be revoked?
5. Security-Related Reasons
Green card holders who engage in activities deemed threatening to U.S. national security can lose their status. This includes involvement in terrorism, espionage, or other activities that undermine the safety of the United States.
Examples of Security Violations
Membership in Terrorist Organizations: Being part of or assisting a terrorist group can lead to immediate revocation and deportation.
Espionage or Treason: Activities related to spying, intelligence gathering for foreign governments, or attempts to overthrow the government are considered severe violations.
Consequences: In addition to deportation, individuals accused of such activities may face criminal prosecution and significant legal penalties.
—Bouarfa v. Mayorkas, 2024 604 U.S. 6
What this means is that the state need only prove that Mahmoud was part of or assisting a terrorist group. Hamas is a designated terrorist group.
Conclusion
The left loves to talk about hate speech. They love it because it allows them to justify their violence. Hate speech is always in the eye of the offended.
“Violent” speech is violence, according to the left.
Violence can be countered with violence.
Therefore, you saying something that they disagree with is hate speech, which in turn is violence, which means they can punch you.
In the other direction, any real, physical violence they engage in is “just protests” and is “speech” protected by the Constitution.
They are going to lose this one. I’ve seen to many good filings from this administration to believe they aren’t going to win. Maybe not at the district level with all the rogue inferior judges, but they will win higher up.