Skip to main content

China Publicly Discloses Plan For a Lunar Landing Within Three Years

3 days 11 hours ago
At the Seventh Manned Spaceflight Conference in Beijing, Chinese space officials publicly outlined the most detailed roadmap yet for landing astronauts on the Moon "before 2030." Ars Technica reports: China's lunar landings will involve a lunar-orbit rendezvous similar to what NASA did in the 1960s and early 1970s with the Apollo program. However, lacking a rocket as powerful as the Saturn V vehicle, the crew and lunar lander will launch separately to the Moon. According to slides shared on social media, the current plan involves: - An uncrewed test of the Long March 10A rocket (a single-stick variant, with no boosters) and the Mengzhou spacecraft to low-Earth orbit. Target: early 2027 - An uncrewed test of the larger Long March 10 rocket (a core stage with two boosters) and the Lanyue lunar lander, including descent/ascent from Moon's surface. Target: 2028 - A concurrent launch of two Long March 10 rockets, one carrying uncrewed Mengzhou and the other the Lanyue vehicle; they will dock in lunar orbit. Target: 2029 - Dual launch of Long March 10 rockets, this time with crew on the Mengzhou spacecraft, leading to crewed landing mission. Target: "Before 2030" The public release of this new information provides a timeline for gauging China's technical progress in its efforts to land humans on the Moon before 2030 and beat NASA and the United States back to the lunar surface. Notably, the plan (for now, at least) omits a mission similar to Apollo 8 or Artemis II, which involved a crew flying out to the Moon and either entering orbit or passing close by before returning to Earth. The Mengzhou vehicle should still get a workout closer to Earth with humans on board as part of missions carrying astronauts to Tiangong, China's space station in low-Earth orbit.

Read more of this story at Slashdot.

BeauHD

CodeSOD: Death of the Auth-Er

3 days 11 hours ago

When writing Perl, it's not unusual to want to die. The die function ends your Perl program with an error string, and you'll often see code like: die "My error" unless $i > 5 or die "Other error" if check(), because Perl just loves the backwards conditionals. What's even more fun with die is how it behaves with eval blocks, so it doesn't always kill your program, sometimes it is how you pass error strings back out of sections of your program.

And poor Bobby has inherited some Perl that just really loves to die.

public function store() { echo 'Hello'; die; if (Auth::attempt(Input::only('email', 'password'))) { echo 'done'; die; // return "welcome ".Auth::user()->username } echo "Oops! Fails"; die; return Redirect::back()->with_input(); }

Bobby didn't send the source control history here, but I have a sense of what it likely was like, once. If they authenticate successfully, print a welcome message. If they don't, redirect back to the logon page and let them try again. I suspect they wanted to disable the route. So first they disabled the success path, only to discover that the failure path kept redirecting, so they disabled that too. Finally, they added the Hello at the top to disable the whole thing.

Why? Why did they do any of this? No idea. It feels like debugging code, but you'd expect more echos and fewer dies if that were the case. And you wouldn't expect it to leak into production and sit there for years, which is what happened here.

.comment { border: none; } [Advertisement] BuildMaster allows you to create a self-service release management platform that allows different teams to manage their applications. Explore how!
Remy Porter