text:
Distraction Free Reading
MacHack VI: Computer chess and the roots of AI
 Rebecca Perry  June 10, 2020
On January 21, 1967, a mild winter Saturday in Cambridge, Massachusetts, a couple of computer researchers from the Artificial Intelligence (AI) Laboratory at the Massachusetts Institute of Technology (MIT) flagged down a taxi near Tech Square. Loading a bulky, 60-pound teletype called a 35 KSR ("Keyboard Send/Receive") into the trunk, they set off for downtown Boston, across the river. A short while later, the cab pulled up at the Young Men's Christian Union (YMCU), and the researchers wrestled the machine up the stairs to the second floor, where the Boylston Chess Club was setting up for a weekend tournament.
Making intelligence visible
As the teletype was being set up alongside a physical chess board, Stu Nelson, another AI Lab member and skilled phone hacker, tinkered with the YMCU's phone line to connect the teletype to the Lab's computer, located a few miles away on the 9th floor of Tech Square. There, a group of researchers gathered around a second physical chess set, arranged in front of a PDP-6, a room-sized computer made by the Digital Equipment Corporation. The PDP-6, released in 1964, was a well-equipped machine with a 256K Fabritek main memory, 4 spinning microtape drives, a DEC 340 graphics display and a paper tape reader, which loaded the program into memory. At the time it played in its first two tournaments, the computer had only a 16K memory, nearly all of which was occupied by the program. Lab members Bill Gosper (pictured below with his hand poised above the board) and Allen Moulton (below, seated, leaning on his hand), operated the PDP-6, while Alan Baisley, proficient at both programing and chess, operated the teletype machine at the tournament site. Listening intently to the machine, monitoring its inputs and outputs, MacHack's attendants at the tournament put faces and a tangible presence on the invisible performance of thinking and reasoning inside of the computer. They projected a sense that MacHack was not simply an external aid for a human player; it was playing using its algorithms, and humans were observing the results.
Students at MIT's Artificial Intelligence Lab in Cambridge, watch the computer play chess against a human opponent miles away in downtown Boston. Image courtesy of MIT and The Computer History Museum.
Greenblatt's Hack
Richard Greenblatt, a former MIT student then working on several initiatives at the Lab, was both a very good chess player and master computer hacker. Greenblatt was the primary author of the program, which was partly supported by Project M.A.C., a far-ranging series of research efforts at MIT sponsored by the Advanced Research Projects Agency (later called DARPA), the Department of Defense, and funding from the Office of Naval Research. Greenblatt co-authored a paper on the project, presented at the Fall Joint Computer Conference in 1967.(1) Greenblatt began writing MacHack VI in MIDAS, a PDP-6 macro assembly language, in mid- November 1966, finding time between his many research projects. His program was entered into the competition as "Robert Q." It became the first chess program to formally compete against a human opponent in tournament play.
Richard Greenblatt, right, pictured with an oscilloscope, and his colleague Thomas Knight, with the CADR LISP computer they developed at MIT's AI Lab, c. 1978. Image courtesy of MIT and The Computer History Museum.
At MIT's AI Lab, there was interest in chess, and in the progress of Greenblatt's program. MIT students, including 3 who were national chess masters, as well as several MIT faculty, visited the Lab to test MacHack's progress. An outspoken AI skeptic, philosophy professor Herbert Dreyfus, was invited to come and try his skill against the machine. He dropped by the Lab and lost to the computer. Dreyfus had expressed his belief that a computer could not beat a human, even a child. Greenblatt, who had been playing chess since childhood, later noted dryly that Dreyfus wasn't a particularly good player.(2)
For the first game of the tournament MacHack VI was matched with an excellent player, Carl Wagner, who was a national master. Wagner, playing white, chose his first move, which the teletype operator duly communicated to the computer at Tech Square. MacHack VI's response was transmitted back to the terminal, and the MIT teams at each end moved the physical pieces on the boards. Wagner won the first game after 55 moves. MacHack VI played 4 subsequent games that weekend against different opponents. Overall, MacHack VI lost 4 and played to a draw in the 3rd game. The AI Lab members viewed the performance of Greenblatt's tournament-quality chess program as a significant improvement on previous chess programs, and a step closer to achieving a true thinking machine. Some skeptics were unconvinced or perhaps felt threatened, and one newspaper summarized the event as, "MIT Computer Loses to Human in Chess."(3)
A program joins the Federation
The Massachusetts State Chess Federation had required the program to join the association in order to enter the competition. On the basis of the first tournament's results, the Federation would eventually assign the program a rating of around 1200, making it a Class D player—a strong "social player," though no match for top human chess masters.(4) Greenblatt continued to develop MacHack, which in late April entered another tournament in Boston, eventually achieving a performance rating of 1820, its highest rating during that era. Mackhack's entry into the arena hinted at a growing ambiguity about who or what could be called a chess player, and a blurring of the human/machine boundary as AI began to advance. MacHack would go on to compete in a series of tournaments, with Greenblatt continuing to improve its performance over time.
Before Greenblatt arrived at MIT, Professor John McCarthy had worked on an early chess program, which MIT student Alan Kotok refined for his masters thesis project. Though they had made some progress, Greenblatt noted that their efforts were only modestly successful, and lacked a deep understanding of the game.(6) McCarthy later decamped for Stanford University, while Greenblatt and other AI Lab members, building on McCarthy's insights, would go on to develop LISP-based computers at MIT. Greenblatt eventually spun off his own company called LISP Machines, while another group in the Lab formed Symbolics.
The Boston chess tournaments took place against a background of complex and sometimes contradictory developments in AI, computer hardware and software, driven by funding and market conditions. In the early 1960s, computers were just beginning to develop into more compact, flexible and powerful research tools. Computer science was years away from being a recognized discipline and the art of computer programming was still in its early stages. In the fall of 1958, inspired by a Dartmouth University conference they had attended, McCarthy and MIT Professor Marvin Minsky started the M.I.T. Artificial Intelligence Project, partly funded by a military contract. McCarthy originated a powerful new programming language, LISP (List Interpretive String Processing), an AI-oriented language used to explore and define the new field, which he described as "…the science and engineering of making intelligent machines, especially intelligent computer programs."(5)
In the early 1970s the field of artificial intelligence, once heavily supported by government funding at MIT and elsewhere, experienced a funding drought and entered a research decline known as "AI Winter." It suffered another decline in the late 1980s as AI fell out of favor again. In 2020 AI is on the rise and in the news once more. Human/machine boundaries are even more complicated, as computers have both empowered communication and taken control of complex systems while become deeply entangled with questions of privacy and surveillance. It is hard to imagine, in the current era where human-AI interactions are increasingly normalized through Alexa, self-driving cars and sophisticated AI-powered computer games, that a few decades ago artificial intelligence was considered to be as improbable as a machine beating a human at chess.
Note: With acknowledgement and thanks to Richard Greenblatt for sharing his reminisences, insights on the field, technical information and thoughts on his work.
(1) Richard D. Greenblatt, Donald E. Eastlake, III, and Stephen D. Crocker, "The Greenblatt Chess Program," Proceedings, Fall Joint Computer Conference, 1967.
(2) Interviews with Richard Greenblatt by the author, May-June 2020. For Dreyfus' many critiques of AI, see Alchemy and AI (1965), What Computers Can't Do (1972, 1979, 1992) and Mind over Machine (1986).
(3) "MIT Computer Loses to Human in Chess," The Lewiston Daily Sun, January 23, 1967.
(4) Chess classes, set by the United States Chess Federation, rank players using a complex formula based on performance in tournaments. Class A players are those ranked from 1800-1999, while Class D players are ranked from 1200 to 1399. The lowest ranking is E, from 1000-1199. The U.S. Federation issued an honorary certificate of membership for MacHack VI, allowing it to compete in tournaments.
(5) John McCarthy is considered to be a founder of Artificial Intelligence, and was among the pioneers of programming, language processing, computer networking and computer time-sharing. His work at MIT and later at Stanford University, left an indelible mark on both institutions and many different research areas.
(6) Greenblatt interviews, May-June 2020.
 Post Permalink	 No Responses Yet	 General	 artificial intelligence, computer chess, computer games, computer hacking, history of technology
← On the social nature of toilet paper
'Dynamic Totalities': Data Surveillance as a Paradigm →
Human/machine boundaries are even more complicated, as computers have both empowered communication and taken control of complex systems while become deeply entangled with questions of privacy and surveillance.
 Author: Rebecca Perry
I study computing, visual representation and digital 3D modeling for film, games and education. I am especially interested in the creative process, collaborations between artists and coders, and how learning happens in games.
 Published: June 10, 2020
 Discussion: No Responses Yet
 Categories: General
 Tags: artificial intelligence, computer chess, computer games, computer hacking, history of technology
 Post Permalink


Search our online windshield wiper motor catalog and find the lowest priced discount auto parts on the web. We sell wholesale to the public. We offer high quality new, OEM, aftermarket and remanufactured Plymouth Fury III Windshield Wiper Motor parts. We specialize in a wide-variety of high-quality car parts and accessories for your car, truck or SUV. Call toll free to order or place your order online via our secure checkout system. Our online parts catalog uses real-time inventory, so you can be assured the parts you buy are in stock at the time of ordering. Most orders are shipped the same day. They are available for the following Plymouth Fury III years: 1974, 1973, 1972, 74, 73, 72. This part is also sometimes called Plymouth Fury III Wiper Motor. We stock windshield wiper motor parts for most Plymouth models including Duster, Voyager, Grand Voyager, Barracuda, Satellite, Neon, Breeze, Road Runner, Valiant, Sundance, Scamp, Volare, Fury, Acclaim, Belvedere, Trailduster, Laser, Colt, Reliant, Horizon, Prowler, Gran Fury, Fury II, Caravelle, Fury I, Turismo, Conquest and Sapporo.
We stock these Windshield Wiper Motor brands for the Plymouth Fury III: A1 Cardone.
Good customer support, (it's nice to call an online store and actually talk to a real person). Item shipped quickly and item was received on time and as described. Would do business again. Thanks.


text:
I started this blog to champion the principles upon which our nation was founded, as informed by my Christian belief. I intend to champion free markets, free trade, and freedom of speech, equal justice for all human beings and a constitutional republic with powers of the government strictly limited. I will propose paths forward for those who believe that expanding government is the chief threat to the freedom and wealth of the world today. Today, government expansion is championed in America primarily by the left, (or liberals/progressives) and in the world in general, by progressives' cousins, the socialists.
All forms of socialism, whether Communism, Fascism, Nazism, Peronism or more recently, Iranian style Islamic-Socialism have been a blot on human history and the progress of freedom. Today, in America, the left wing advocates positions that are at best, a stone's throw away from socialism and is imbued with the socialist ethos. They have hijacked many of the symbols, institutions and even the vocabulary of liberty. "Liberal" once defined a movement supportive of free-trade, free-markets, free-speech and industrialization. On its face, "progressive" might seem to describe an individual who favors progress. Yet it is a prominent feature of today's progressive movement that it is populated by Luddites who openly oppose advances in technology.
In choosing the title of this blog, I am mindful of history. The Liberator was the premiere newspaper of the abolition movement in pre-Civil War America. (I have placed a picture of their masthead on this blog.) The publisher and editor, William Lloyd Garrison, took an uncompromising stand against slavery, the leading evil of his day. Unfortunately, slavery is still with the world. After the Civil War and passage of the 15th amendment, Garrison, thinking the work of the abolition movement to be done, shut down The Liberator. His son Wendell was the literary editor of a new magazine, "New York Nation," founded at the end of the Civil War. Ironically, one of the leading voices of socialism in America, "The Nation," is it's direct descendant. However, I believe that small government conservatism, libertarianism, if you will, is the rightful heir of Garrison's ideals.
Unfortunately, the left is not the only enemy of freedom. One of the reasons for the Obama victory was the failure of Republicans under George Bush to champion limited government, see prescriptions for seniors, "No Child Left Behind" and caving on steel tariffs. This failure was the result of ignorance, lust for power, and corruption. Further, the Republicans became identified as the "party of big government." I believe that voters are rational; given the choice between two big government parties, the people voted for the party more ideologically committed to making big government work. Dean has more on this in an election post-mortem.
The intellectual underpinnings of limited government always face an uphill fight in the war of ideas. Advocates of bigger government point to some problem, and there always is one, and say, "we can solve this if we have the will," not adding "and your tax dollars." That the solutions then cause more problems is only gravy on the turkey for the left, because new problems have been created to "solve." It is a challenge to propose less intrusive solutions or to defend the position that no solution at all is really needed.
Ultimately this is just a blog by a guy whose main talent might be something other than writing. I hope to be entertaining, though it is tough to measure up to the standard set by Dean on BwD, but I'll let you be the judge of that.
Labels: founding, garrison, liberator
First of all, congratulations on the new weblog, B-Daddy! I like the look of the site, and the focus: "to champion the principles upon which our nation was founded." I look forward to the exchange of ideas that will no doubt take place on this new site.
There's an interesting article this month on the Zola Levitt site (a website, by the way, of particular interest to Christian Zionists and supporters of Israel, like myself) that points out how far back in our nation's history was the establishment of the foundational concepts of free trade and property rights, and the repudiation of the socialist ethos. The title of the lead article (actually written in 1955) of the Levitt Letter is "Pilgrims Disavowed Socialism" by Sartell Prentice, Jr. I think you will find it interesting. The newsletter can be found at:
http://www.levitt.com/newsletters/2008-12.pdf
I agree with the premise that part of the reason for the election outcome was the compromise of the Republicans and their failure to "stay the course" on the principles they have professed to espouse. I think that the church also shares in this failure. I am appalled at how many professing Christians had not only voted for Obama, but had bought into the world's way of thinking (i.e. economic issues are more important than moral issues, etc.). The church overall has become the Laodicean community described in Revelation 3:14-22. I don't believe God has "punished" the church with bringing the socialist Democrats to power, but may be giving us what we need. Loss of our wealth, and becoming the persecuted minority is not what we would choose. But it might be what it will take to wake up those who profess to follow Christ.
People sometimes ask us if we have considered the dangers of where we are going, as we prepare for the mission field in Eastern Europe (i.e. Lithuanian mafia, Russian tanks, etc.). Sometimes I am tempted to tell them: "better the devil you know, than the one you don't", for Americans have no idea what is in their future if things don't radically change. Our nation is back to being the "sleeping giant" described by Admiral Yamamoto after the Pearl Harbor attack. I fear the things that are coming on this nation, if people don't wake up and see what is happening. I believe that our one hope is that God sends a revival on the level of the Great Awakenings that took place in our land in the 18th and 19th centuries (and to some degree in the 20th). I love my country. I wore its uniform, and believe that the oath I took to defend the Constitution was not abrogated when I resigned my commission. Even though I'm in a foreign land, I will continue to pray, vote, and take a stand against the forces of darkness that are coming against us. I am counting on another Great Awakening. Let it be so, Lord!
Anyway, I will leave my soap box (or pulpit...;-)...) and once again congratulate you on this timely and appreciated weblog.
~Gary
Dean November 12, 2008 at 5:17 PM
B-Daddy, congrats on the new digs. Though the old place was served its purpose very well, it was time to move on and your new dwellings fit more squarely with the values and ideals you champion so eloquently.
Gary, Wow! Well said.
B-Daddy November 12, 2008 at 9:18 PM
Gary, well said indeed.
Dean, thanks for coming by.
Thanks for the kudos, guys…but I'm just getting "revved up"! I will try to not dominate the airwaves. ;-D
But has anyone else been totally chilled by the Great One's proposal of a Civilian National Security Force:
http://www.eyeblast.tv/public/video.aspx?v=e4qG6UIr8z
Barracks, trains to transport our youth to training camps (indoctrination centers?)…is this starting to look like history repeating itself? A time of civil unrest and economic turmoil, a man of great charisma (women swoon, the media fawns, etc.) promises to usher in a "golden age". He says he will gather all our children, put them in uniform, train them, show then how to defend the fatherla...uh, I mean our country. Are we starting to hear the faint sound of goose-stepping jackboots?...young uniformed thugs beating up Jews and Christians, the "Kristallnacht" of the new century happening all over again?
Perhaps it's my theater background that makes me too melodramatic. But George Santayana said, "Those who cannot remember the past are condemned to repeat it." Those Russian tanks in Lithuania somehow don't sound as threatening anymore.
Lord, please wake up the sleeping giant.
One more thing, and I'll be quiet and let someone else have their say. ;-)
For anyone thinking my previous email is extreme, please check out this article that quotes a former Hitler Youth and his take on what is happening in this country we love:
http://worldnetdaily.com/index.php?fa=PAGE.view&pageId=80644
The juxtaposition of Der Fuehrer at the height of his power, with the shot of Liberty and Old Glory on the cover of his book is chilling in itself. How ironic that the Left has personified people of faith, conservatives and upholders of traditional family values as Fascists and Nazis. The very thing they fear has come upon them!
Thanksgiving Toast
America the Beautiful, San Diego County the wretched
Equal Justice for "Joe the Plumber" and Obama?
Today is Victory in Iraq Day
Socialist Roundup
The Pope Analyzes the Market Crash
Release the Strategic Petroleum Reserve?
What Happened to This Guy? UPDATED
The Challenge for our Generation
Firmly on That Road (You Libertarians Know Which One)

redpajama_set_name: RedPajamaCommonCrawl


text:
Police Officer Verdell Smith
Police Officer Verdell Smith was struck and killed by a vehicle whose driver had been involved in a triple shooting approximately 30 minutes earlier.
The man, who had been seen talking to himself loudly, suddenly pulled out a handgun and shot two customers outside of a restaurant on North Main Street shortly before 10:00 pm. Several citizens then chased the man on foot a short distance to a sporting goods store parking lot, where the man shot an employee and fled in a car, as officers arrived on the scene.
Responding officers pursued the vehicle, which started driving the wrong way down B. B. King Boulevard, which had been closed to vehicle traffic for a street festival. As the pursuit entered the area Officer Smith and other officers attempted to clear the street and sidewalks of pedestrians, but the vehicle crashed through a barrier and struck him.
The man was taken into custody after striking Officer Smith. He was charged three counts of attempted murder and one count of murder.
Officer Smith had served with the Memphis Police Department for 18 years. He is survived by his children, fiancee, and father.
No responses to "Police Officer Verdell Smith"


text:
Home Phone Arena Apple
Phone Arena
The iPhone 8 Back Cover Is More Expensive Than Replacing The Screen
iphone8lung theverge SNZN
The iPhone 8 and iPhone 8 Plus have a glossy back panel instead of aluminium like the iPhone 7, iPhone 6s or iPhone 6. Replacement will be much more expensive than replacing the screen.
The cost of replacing the back cover of the iPhone 8 and iPhone 8 Plus is very expensive (photo – The Verge).
According to AppleInsider, the cost of replacing the back of the iPhone 8 and iPhone 8 Plus is $99, much more expensive than the cost of $29 when replacing the screen. The cost of replacing the back is included in the cost of repairing the "other damage" of the iPhone.
Apple will allow users to replace the screen twice for $29, and replace two other "damages" (including backpacks) for $99. If broken for the third time, the replacement cost will be up to $349 for the iPhone 8, and $399 for the iPhone 8 Plus. So, if you own the iPhone 8, users should "raise as eggs, inspirations like flowers," otherwise they will have to spend a lot of money to replace components.
Apple iPhone X vs 10 Best Smartphone Competitors
Apple iPhone X Review – The Most Appealing iPhone Ever
How to Repair Corrupted Registry Items in Windows
We do not know how much the repair cost of iPhone X is. Apple currently sells the iPhone insurance package for $199, but Apple has not announced the cost of replacing the screen and the iPhone X's back. But the price tag instead of the flagship version of Apple will cost more than $29.


Looks like Dracula's Fiance and Lost in New York are coming to BD on 2/19/19 as a double feature from Redemption/Kino! I was hoping we'd see Dracula's Fiance on BD at some point and Lost in New York is a nice bonus.
"Never forget, never forget The Ogress!"
This is also scheduled for release in the UK from Black House.
f.ramses and Angelman like this.
I don't think I was aware of Black House until now but now I'll have to check on how their other Rollin titles compare to the Kino releases. Do you have a link to any information about the Black House release? I can't seem to find any.
I've picked up some of the Black House titles but haven't watched them yet. I would imagine they are the same transfers as the Kino Lorber but they seem to only have trailers as extras. I've purchased half a dozen of them because I like having different artwork and they weren't expensive through Amazon UK.
Definitely a huge upgrade over the old Shriek Show release!
Got this today and it does look quite nice, glad to finally have this one on BD. I kind of liked the blue tint that the old DVD had during the night scenes but I didn't even remember it while I was watching it, only after seeing that review. Will probably revisit Lost in New York tomorrow, at a glance this one looks pretty good even though it didn't look like much had been done to clean it up.
On a related note Redemption will be releasing The Mask of Medusa in the UK on 3/11. Unfortunately it's going to be DVD only but since I don't have an English friendly copy of this movie and my subtitle file is long gone this is an easy purchase for me, especially since I don't recall any other English friendly releases of it.
Awesome news. Looking forward to retiring my bootleg of Mask of Medusa.


Films at 59, Bristol-based post-production company, has implemented Digital Content Governance platform from Object Matrix, MatrixStore, to consolidate multiple media workflows onto one scalable platform. The installation was carried out by post production integrator, Digital Garage, which has considerable experience delivering progressive, creative, and innovative solutions to content creators, broadcasters and media producers.
As well has having 528 Terabytes of MatrixStore object storage, Films at 59 has implemented MatrixStore Vision, a browser-based content search and collaboration tool, to enable easy search, upload and download of data, and additional asset management functionality. This is all handled within a simple and easy-to-navigate browser window.
Using DropSpot from Object Matrix, Films at 59 is also able to tag objects with metadata on ingest. Content is automatically verified upon a simple drag and drop, without the need for expensive and time-consuming third-party applications.
It's important that we continue to make our clients' experience as creative and simple as possible. With people needing to review work-in-progress, it was key to have a system that could easily allow access, whilst ensuring stringent security and protection for other content. MatrixStore also brings further benefits, such as the ability to automate a lot more tasks and handle multiple tasks simultaneously.
Films at 59 has provided a range of award-winning services to producers across the globe. With clients worldwide, being able to give them easy access, in a secure and protected environment, was particularly important and we are pleased our platform can enable that.
Two engineers from Films at 59 recently received Object Matrix certification, following comprehensive training in Cardiff.


Today's Progress: Worked on html structure and api parsing.
Thoughts: I tried to just focus on a basic structure of the app to not get stuck. This was great because I got most of the functionality working because I didn't focus that much on the design of the app. But I feel that I can get a better structure of my js code.
Thoughts: Learned how to fit and center a background image to the body with css. Havn't fixed the structure of the js code, but it works all fine for now.
Thoughts: Taking the approach of creating a jquery plugin this time. Feels like a better approach for this type of projects. Will se if I will return to the old projects and convert them to jquery plugins instead.
Thoughts: Struggled a bit with structuring multiple jquery plugins in one file. Also hade some truble getting the api request to work. But after learning how to use jsonp with jquery I got it to work.
Thoughts: Tried to work on airplan but wifi was to bad. Enden up working late instead. Have to plan better next time. Tried to figure out how to parse the request, did not make any progress.
Thoughts: Worked on parsing the search result from the Wikipedia API. Have to figure out how to best clear the search result [html] when a new request is made.
Thoughts: Added some animatations but have to tweak it a bit, it is way to slow right now. Most of the functionality is done but have to work on the design.
Thoughts: Tried to separate the search input and the result in two plugins. Having some truble with 'this'. When I am invoking the method to update the search result in my result plugin, 'this' is an instance of the search input plugin. Has to have something to do with that both are named 'Plugin' or something. Should look into that next time.
Thoughts: Got the search functionality to work. I feel that it should be a better way to have the jQuery plugins subcribe and publish to events but my solutions was the best one I could come up with.
Thoughts: Went for a pretty simple design but I am happy with it. Next project i will try not to use bootstrap, and have more fun with the design.
Thoughts: Learned how to use querySelector and createElement.
Thoughts: I can see that working with Vanilla JS to dynamically create DOM elements can fast become tedious work.
Thoughts: This day was a little different. I learned a lot by expirence how it is to mob program. And I also learned how to set up simple React Native App.
Today's Progress: Continued on FreeCodeCamp Twitch Streams project. I can list online and offline streams. I can also filter beetween 'All', 'Online' and 'Offline' streams.
Thoughts: Rewriten most of the code because I had a hard time figuring out a god way to construct the DOM elements.
Today's Progress: Continued on FreeCodeCamp Twitch Streams project. Added alerts for not found channels. Started on mobile first design.
Thoughts: I have quite a good flow now, and it is quite easy to get started each day. The bad part is that i easly lose track of time.
Today's Progress: Continued on FreeCodeCamp Twitch Streams project. Continued on mobile design. Worked with animations.
Thoughts: Next project I build I think I will not build it directly in codepen.io. I think it would be alot easier to build the project in a code editor. But I will probably host the project on codepen when I am done.
Today's Progress: Continued on FreeCodeCamp Twitch Streams project. Continued on mobile design. Worked with relative positioning.
Thoughts: Hade a nice flow today despite the fact that I coded on a train.
Today's Progress: Continued on FreeCodeCamp Twitch Streams project. Continued on mobile design. Changed color scheme, and started to play around with the online/offline status.
Thoughts: Tried to get some work done at my friends place but had some problem to concentrate.
Today's Progress: Finished FreeCodeCamp Twitch Streams project. Changed the design so the status of the channel was clearer. Designed the filter buttons.
Thoughts: Coded once again on the train, and it was a good experience this time also.
Today's Progress: Finished two intermediate algorithm scripting challenges.
Thoughts: The challenges I have done before have been quite easy for me to manage. But these new one are a bit more challenging.
Today's Progress: Finished the Roman Numeral Converter algorithm scripting challenge.
Thoughts: Phew, that was a challenging one.
Today's Progress: Finished some more algorithm scripting challenges.
Thoughts: Finsihed a couple more of the algorithm challenges. Had a little better flow this time.
Thoughts: I need to use MDN more it is a great resource.
Today's Progress: Finished some more algorithm scripting challenges. Mostly regex stuff.
Thoughts: It's pretty easy to get started and write code now, it feels quite natural.
Today's Progress: Finished some more algorithm scripting challenges. Finsished a fibonacci challenge and started on a prime number challenge.
Today's Progress: Finished some more algorithm scripting challenges. Finsished Sum All Primes challenge and started on a Smallest Common Multiple challenge. Learn how to use Array.prototype.sort function. Read about Euclidean algorithm.
Thoughts: Trying to read more to get a better understanding.
Today's Progress: Finished some more algorithm scripting challenges. Learn how to use Euclidean alghoritm to calculate greatest common divisor. I then used it to calculate the least common multiplier. I learn how to use Array.prototype.shift and Array.prototype.unshift functions.
Thoughts: Having a hard time to figure out what to write in this logs.
Today's Progress: Finished the last intermediate algorithm challenges. Learned about closures and how to use parseInt to parse a binary string to decimal.
Thoughts: These challenges went quite easy.
Today's Progress: Started on FCC advance algorithm challenges. Learned about Regex. Used http://regexr.com/ to construct it.
Thoughts: First time I really constructed a regex that complicated by myself, which was a great learning expirience.
Today's Progress: Continued on FCC advance algorithm challenges. Learned some about set theory.
Thoughts: This one was really challenging, but fun!
Today's Progress: Continued on FCC advance algorithm challenges. Stuck on Exact Change challenge.
Thoughts: I'm really struggling with this one.
Today's Progress: Continued on FCC advance algorithm challenges. Some progress on Exact Change challenge.
Thoughts: I have managed to fixed the most difficult tasks but I have some left and some cleanup to do.
Today's Progress: Continued on FCC advance algorithm challenges. Finally completed the Exact Change challenge and I also managed to complete the Inventory Update challenge.
Today's Progress: Continued on FCC advance algorithm challenges. Started on the No repeats please challenge. I have figured out how to calculate the total number of permutations. I have to figure out how to create the strings to do regex on. So that I can return the permutations that don't have repeated consecutive letters.
Thoughts: Was a little tired today, so my progress was quite slow.
Today's Progress: Continued on FCC advance algorithm challenges. Finished No repeats challenge. Learned some more about regex how to use backreferenc, negative lookahead and Heap's Permutation Algorithm.
Thoughts: This was a challenging one, made some wrong turns until i found out about the Heps algorithm.
Thoughts: Had a good flow today. I did not focus that much on efficiency. I instead tried to make the code as understandable i could.
Thoughts: The reading material was really good, but I think I have to go back to it later so I can fully understand it.
Today's Progress: Continued on FCC advance algorithm challenges. Finished Map the Debris challenge.
Thoughts: Worked in two half hour session this time. It was quite good for this challenge becuase I had to read alot to understand what I had to do, and the break made me clear my mind before continued.
Today's Progress: Finished FCC advance algorithm challenges. Finished the Pairwise challenge.
Thoughts: I solved the challenge but I feel that it is possible to do some performance improvements.
Thoughts: I am using my own environment instead of codepen for this project. Trying to keep it as simple as possible.
Thoughts: I am struggling with finding a good data structure but I'm testing my way towards a solution.
Thoughts: I'm getting more use to work with TDD but i sometimes move away from the workflow to test some ideas I may have.
Thoughts: Hoppfully I can get it right this time, it is the state management I'm struggling with.
Thoughts: I kind of stuck, I feel like I have a great idea about what i should do, but I keep rewriting the code when it gets to complex. I think I need to go back to pen and paper to think this through.
Thoughts: Worked late today, but was not that tired so it went quite well.
Thoughts: One thing that I have noticed is that I can feel bad because of it can be hard with this challenges and projects because you want great progress every day.
Thoughts: I finally came up with a structure of my code that I am satisfied with.
Thoughts: Getting close to something that I can start to create an UI around. I am gettings better on the TDD flow but I have to improve on my git commits.
Thoughts: I happy enough with my tests and code to start on the ui, it will be intresting to see which edge cases I have missed.
Thoughts: I am having a little bit of problem with getting the buttons to line up when adding margins.
Thoughts: I have seperated the calculator logic from event binding and DOM manipulation. It's works so far but I think I can improve it a little bit.
Thoughts: Maybe I should use a git flow next project, like a branch per day or something can be a good start.
Thoughts: Trying to find a simple setup to use in my projects.
Thoughts: Did not put that much into the design of the calculator so there is still some improvements that can be made.
Today's Progress: Started on pomodoro clock project. Created basic project structure. Started on a basic ui. Trying to configure webpack to auto reload css and html.
Thoughts: Tried with git branch based on day, but then I may have to push broken code. So maybe it is not that good approach. But I will stick with it for this project.
Today's Progress: Continued on pomodoro clock project. Configured webpack dev server to auto reload index.html and css.
Thoughts: My current flow for git is that I create a new branch each day then when I finnished with my coding I create a tag. I merge the branch into master and delete the branch. I finnaly push the changes to github. My thought is that I will be able to go back to see my progress later on. I don't know if it has any value, but I will stick with it for now. At least I get some practising with git and github.
Today's Progress: Continued on pomodoro clock project. Started to work on the first user story. Worked on the appearance for the clock.
Thoughts: Having some trubble to focus on one thing at a time. I think I overworked the project structure.
Today's Progress: Continued on pomodoro clock project. Finished with the an basic appearance that I like. Trying to implement the functionality for the pomodoro clock using the SAM pattern.
Thoughts: I experimenting with the SAM pattern and hopefully I will be able to understand it better after applying it on this project.
Today's Progress: Continued on pomodoro clock project. Getting a time count down to work.
Thoughts: I decied which model I should use. I was unsure if the model should be keeping track of minutes or seconds or should just be a counter. I decided to use a counter and then in the view convert it to minutes and seconds. So far I feel quite confident that I have chosen the right model.
Today's Progress: Continued on pomodoro clock project. Worked on the state machine for the pomodoro clock.
Thoughts: I really like working with the SAM pattern so far. Using state machines makes the flow of the app very clear.
Today's Progress: Continued on pomodoro clock project. Finished my state machine for starting a session, starting a break session and pausing both a session or a break.
Today's Progress: Continued on pomodoro clock project. Started to work on html for changing the break and session length.
Thoughts: Was really tired today was really hard to focus. But I at least got some work done.
Today's Progress: Continued on pomodoro clock project. Started refactoring project to make testing possible.
Thoughts: Did not create any tests in the beginning while I was learning the SAM pattern, no when I want to refactor some part and it is getting a little bit cumbersome to add new functionality I wanted some tests. But I needed to refactor the code to make that possible.
Today's Progress: Continued on pomodoro clock project. Refactored and created first tests.
Thoughts: I'm not totally confident how to best write tests for the SAM pattern. Will have to try some different approaches.
Today's Progress: Continued on pomodoro clock project. Removed event listeners and added event handling directly in views. Refactored views into components.
Thoughts: Did not write any tests today...not good, need more practicing!
Today's Progress: Continued on pomodoro clock project. Fixed state transition from session to break. Added a reset action.
Today's Progress: Continued on pomodoro clock project. Worked on styles on the project.
Thoughts: Had a good flow today when working. I am just working on the last details.
Today's Progress: Completed pomodoro clock project. Worked on show/hide settings.
Thoughts: I am satisfied with the project but there is still some improvements that can be made.
Today's Progress: Experimenting with Cellular Automaton. Created first random generation. Started on cloning second generation.
Thoughts: Took a short break from FCC to do something else for a while.
Today's Progress: Continued Experimenting with Cellular Automaton. Added option to select different rules and change simple or random initial condition.
Thoughts: The code is not the best but I think is quite easy to understand. Fun small project.
Today's Progress: Started on Tic Tac Toe project. Started working on the look and feel.
Thoughts: Thinking of making the desing look and feel like a retro game.
Today's Progress: Continued on Tic Tac Toe project. Worked on select players screen.
Thoughts: I'm trying to challenge myself with the design, but I feel like I don't have any good ideas.
Today's Progress: Continued on Tic Tac Toe project. Worked on grid.
Thoughts: I am wondering how I should implement the AI when playing one player games.
Today's Progress: Continued on Tic Tac Toe project. Continued on the html and css. Started on the js.
Thoughts: I trying out the SAM pattern again. Can't say if I like it or not. Need some more time with it.
Today's Progress: Continued on Tic Tac Toe project. Added functionality to select number of players, and witch type of checker to use.
Thoughts: I starting to loose some motiviation, soo is trying to do simple things I know. Maybe I will gain some new motivation under the holidays. But I will keep on going, I am not far from my goal to complete the challenge.
Today's Progress: Continued on Tic Tac Toe project. Added webpack.
Thoughts: Decided to go with webpack again. I want to tweek it so it is simple to deploy to github pages.
Today's Progress: Continued on Tic Tac Toe project. Replaced webpack 1 with webpack 2. Configured deployment to GitHub Pages.
Thoughts: Thinking of trying out Redux instead of SAM pattern, may replace it next time.
Today's Progress: Continued on Tic Tac Toe project. Added mocha and chai for testing. Removed old implementation to start of with TDD instead.
Thoughts: Trying to understand how to implement Minimax algorithm and how to do it in a TDD way.
Today's Progress: Continued on Tic Tac Toe project. Created first tests for two player game.
Thoughts: Changed strategy from implementing AI first to implementing a two player game instead.
Today's Progress: Continued on Tic Tac Toe project. Continued writing tests for two player game. Started with the first rules.
Thoughts: Have some shared state in my code, and thinking how I can better control it. But will not worry to much about it right now.
Today's Progress: Continued on Tic Tac Toe project. Continued writing tests for two player game. Did some refactoring to remove shared state.
Thoughts: Because of the refactoring I did not had as much progress today as I wanted, but I hade some at least.
Today's Progress: Continued on Tic Tac Toe project. Wrote some more test and did some refactoring of both the code and the tests.
Thoughts: Think I will start to connect the business logic to the html next time. Thinking about to write some End-To-End test.
Today's Progress: Continued on Tic Tac Toe project. Can add X and O by clicking empty cells on the board.
Thoughts: Decided to change back to the SAM pattern because I wanted to try it out one more time. Will convert my tests to to work with the new pattern.
Today's Progress: Continued on Tic Tac Toe project. Refactored tests to work with the SAM Pattern.
Thoughts: My webpack configurations seems not to work because it does not auto reload.
Today's Progress: Continued on Tic Tac Toe project. Applied the rules to check for winning moves.
Thoughts: Not much progress but I am getting there.
Today's Progress: Continued on Tic Tac Toe project. Can play a two player game and restart when finished.
Thoughts: Work on the buss to the airport and some on the airport and both times was a good experience. Will start with the AI tomorrow.
Today's Progress: Continued on Tic Tac Toe project. Started to work on the AI. Not that much progress.
Thoughts: Think I have to rework the state management a bit because I need to now if the board is unplayed.
Today's Progress: Continued on Tic Tac Toe project. Continued to work some on the AI. Started to refactor out the board related functionality into a separate file.
Thoughts: Even do I have had some slow progress lately I have overall this year learned a lot. Looking forward for the challenges to come next year.
Today's Progress: Continued on Tic Tac Toe project. Refactor out the board related functionality into a separate file.
Thoughts: Was really tired today so my progress was slow.
Today's Progress: Continued on Tic Tac Toe project. Started with a simplerer AI just to get some progress. The AI is really stupid and just generating random a position for an empty cell.
Thoughts: With the new simpler way of trying to solve the ai I had a lot more progress.
Today's Progress: Continued on Tic Tac Toe project. I have finnished all user stories. I can play against a computer player who select a random empty cell. I can choose between X or O in the beginning and the game resets when game is over.
Thoughts: I solved all user stories but I want to implement the minimax algorithm. Hopefully I should be able to do that by replacing my randomPositionComputer using the same interface.
Today's Progress: Continued on Tic Tac Toe project. Did some fine tuning of the appearance for the game. Added a new computer player who desides the next position by some simple rules.
Thoughts: Tried to use waffle.io to plan ahead before started to program. Will try some more to see if it can keep me more focues on one task.
Today's Progress: Continued on Tic Tac Toe project. Started refactor to use factory functions to create cells and the board.
Thoughts: I can probably simplify a lot of logic after the refactoring.
Today's Progress: Continued on Tic Tac Toe project. Refactored the tests for the cells and board.
Thoughts: I feel like I am improving my skills in testing, but I need to practice even more to feel confortable to work tdd.
Today's Progress: Continued on Tic Tac Toe project. Refactored the api once more to use a more datadriven approach.
Thoughts: I have change the api a lot, which is not good because I don't have that much progress but at least I get to practice different ways to implement a solution.
Today's Progress: Continued on Tic Tac Toe project. Today I totally broke the game :P So progress is more or less 0, maybe -1.
Thoughts: I am thinking about to revert it back to when I had a working game. Because I am working in circles without really improving anything. I just change things. So I think I need a break to work on something else for a while.
Today's Progress: Started on a new project to learn more about using canvas. Createat a canvas and draw a falling particle that bounce.
Thoughts: Needed a break from my tic-tac-toe project so started something completly different. It feels good so far.
Today's Progress: Finished my little canvas project. Created a type of raining effect.
Thoughts: I DID IT! 100 days of code! It was fun, challenging but most of all I did learn a lot.


text:
Q: PHP - Export MySQL tables to JSON file I am trying to export my MySQL tables from my database to a JSON file, so I can list them in an array.
I can create files with this code no problem:
        $sql=mysql_query("select * from food_breakfast");

    while($row=mysql_fetch_assoc($sql))
    {
    $ID=$row['ID'];
    $Consumption=$row['Consumption'];
    $Subline=$row['Subline'];
    $Price=$row['Price'];
    $visible=$row['visible'];

    $posts[] = array('ID'=> $ID, 'Consumption'=> $Consumption, 'Subline'=> $Subline, 'Price'=> $Price, 'visible'=> $visible);
    }
    $response['posts'] = $posts;

    $fp = fopen('results.json', 'w');
    fwrite($fp, json_encode($response));
    fclose($fp);

Now this reads a table and draws it's info from the fields inside it.
I would like to know if it is possible to make a JSON file with the names of the tables, so one level higher in the  hierarchy.
I have part of the code:
    $showtablequery = "
    SHOW TABLES
    FROM
        [database]
    LIKE
    '%food_%'
    ";

$sql=mysql_query($showtablequery);

    while($row=mysql_fetch_array($sql))
     {
       $tablename = $row[0];

     $posts[] = array('tablename'=> $tablename);
      }
     $response['posts'] = $posts;

But now i am stuck in the last line where is says: $ID=$row['ID']; This relates to the info inside the Table and I do not know what to put here.
Also as you can see, I need to filter the Tables to only list the tables starting with food_ and drinks_
Any help is greatly appreciated:-)

A: There is no 'table id' in MySQL and therefore the result set from SHOW TABLES has no index id. The only index in the resultset is named 'Tables_in_DATABASENAME'.
Also you should use the mysqli library as the good old mysql library is depreacted. Having prepared an example:
<?php

$mysqli = new mysqli(
    'yourserver',
    'yourusername',
    'yourpassword',
    'yourdatabasename'
);

if ($mysqli->connect_errno) {
    echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") "
         . $mysqli->connect_error;
}

$result = $mysqli->query('SHOW TABLES FROM `yourdatabasename` LIKE \'%food_%\'');
if(!$result) {
    die('Database error: ' . $mysqli->error);
}

$posts = array();
// use fetch_array instead of fetch_assoc as the column
while($row = $result->fetch_array()) {
    $tablename = $row[0];
    $posts []= array (
        'tablename' => $tablename
    );
}

var_dump($posts);

redpajama_set_name: RedPajamaStackExchange


HARTFORD, Conn. -- The authority that will be overseeing Connecticut's new Retirement Security Program has its first meeting today.
The 15-member board will guide the launch of the retirement savings program signed into law in 2016. The Retirement Security Program requires businesses with five or more employees and no pension or 401(k) plan to participate in the payroll deduction savings plan.
Employers cannot match employee contributions, and workers can opt out. But according to John Erlingheuser, advocacy director at AARP Connecticut, the plan will help some 600,000 people in the state save for retirement.
"Connecticut has now joined other states - like Maryland, Illinois, Oregon, Washington and California - moving forward in coming up with a solution to the retirement savings crisis that we have here in the United States," Erlingheuser said.
The program should begin operation next year. Research indicates there is a $7 trillion retirement savings deficit among older Americans nationwide.
AARP sites studies that have shown people are 15 times more likely to save for retirement if they have a payroll deduction plan at work. And, Erlingheuser noted, that will save the state money.
"If people in Connecticut save approximately $1,000 more per year, in the next 20 years or so, we're talking about the state of Connecticut saving over $90 million in public assistance programs," he said.
Initial funding is from grant money and will be recouped from the vendors providing the private IRA plans. So, Erlingheuser said, the program won't cost the state anything.
He added that creating this program has benefits not only for future retirees, but for all Connecticut taxpayers.