Writers Block is a real thing but Programmer

first_img“Writer’s Block” is a real thing, but “Programmer’s Block?” According to computer science professor at Oregon State University, Heather Knight, programmers are just as subject to getting blocked as writers, but programmers do not have a host of self-help resources with insights applicable to programming. However, she discovered that many of the writing books for writer’s block had methods that can be applied to programming. SD Times summarized her list of 10 ways to solve programmer’s block (and yes, her list starts at zero): Tip 0 (Program First): Schedule your programming like you would a meeting. Do whatever it takes to “glue” yourself to your chair. Grab some coffee and park it. Tip 1 (Don’t be afraid to use paper): According to Knight, Writing Your Dissertation in Fifteen Minutes a Day “emphasizes the importance of getting to draft zero, the conceptual template predates the first draft.” Sometimes free writing can help grab all those ideas floating around in your head overnight and during the wee hours of the morning. Don’t be afraid to get out the old fashioned pen and paper.Tip 2 (Establish a programming addiction): Establishing a schedule is the best way to guarantee accomplishment, said Knight. We are creatures of habit after all, so make programming a part of your daily schedule and then set achievable (reasonable) goals. Tip 3 (Track ideas as well as bugs): Just like you would track bugs, track those ideas as well. Start with Tip #2, but if creativity doesn’t follow your schedule, catch your ideas when you can, said Knight. She recommends carrying a notebook. Tip 4 (Make friends): Join online forums, meetups, hackathons — chat with folks about their code. According to Knight, “people do better when we have accountability.”Tip 5 (Learn from others): “Unlike writing, it’s very much encouraged to use pre-existing libraries and samples to scaffold your project needs,” wrote Knight. “Reference where things come from, but there’s no need to re-invent the wheel when someone has already figured a problem out.”Tip 6 (Be nice to your muse): Like writing, conceptualizing how code should be structured requires a creative process. Take a walk, pace the hallway, and don’t be afraid to “celebrate the activities that fertilize the soil before planting, and water it after,” wrote Knight.Tip 7 (Be heartless, but not mean-spirited): Stephen King once said writers in their editing stage will “kill their darlings.” For programmers, the tricky part is finding mistakes without recrimination, said Knight. She recommends being heartless when it comes to the purpose of your code, but be kind when it comes to yourself. Tip 8 (Beware the curse of knowledge): “One of the biggest challenges of writing is ensuring the audience follows,” wrote Knight. “Use whitespace, comment your code, and spend time creating sensible abstractions and structures. It doesn’t matter how clever your prose (or code) is, if people cannot deconstruct the story.”Tip 9 (End on a downward slope): Knight said to devote 10% of the end of your day to think about what you’ll do the next. That way, you can wake up and just get started on your code. “I believe these ten strategies can make you more creative, more productive, and less likely to get stuck,” she wrote.last_img read more

Rust 136 The new 1360 version of the Rust progr

first_imgRust 1.36The new 1.36.0 version of the Rust programming language introduces performance enhancements and new features. This includes the stabilization of the Future trait, the alloc crate, the MaybeUninit type, NLL for Rust 2015, a new HashMapimplementation and –offline support in Cargo. The team behind Rust says it hopes the stabilized Future trait will give important crates, libraries and the ecosystem time to prepare for async/.await. Also, starting with Rust 1.36.0, the parts of std that depend on a global allocator, e.g. Vec, are now available in the alloc crate.The detailed list of changes can be viewed here.ReSharper Ultimate 2019.2 is in early access ReSharper Ultimate 2019.2 started its early access program, which includes an updated Performance guide page and initial support for the “Per-Monitor DPI Awareness” mode in Visual Studio 2019 that makes it possible for controls to change their DPI dynamically. New inspections are available including “Unmatched preprocessor directive”, “Explicitly defaulted special member function is implicitly deleted” and “Redundant final function specifier in a final class”.The updated version also had several updates in Navigation, support for additional C++ 20 features, code completion improvements, Unreal Engine 4 support and improvements to typing assist in multi-line comments. The detailed list of Ultimate 2019.2 can be viewed here. Facebook announced that it is open-sourcing its deep learning recommendation model (DLRM) to work with categorical data, which is used to describe higher level attributes. The open-source implementation of DLRM can be used as a benchmark to measure the speed at which a model and associated operators perform and how various numerical techniques affect its accuracy, according to Facebook. The DLRM benchmark is written in Python to allow flexibility and provides the code in either PyTorch and Caffe2 and an implementation can use Glow C++ operators. It also supports the generation of both random and synthetic inputs.“By providing a detailed description of the DLRM state-of-the-art personalized recommendation system and its open source implementation, we hope to draw attention to the unique challenges that this class of models present,” Facebook wrote in a post. “Developing new and better methods to use deep learning for recommendation and personalization tools (and to improve model efficiency and performance) will lead to new ways to connect people to the content that is most relevant to them.”React Native 0.60 is availableThe React Native Core team introduced version 0.60 of React Native, introducing a migration over to AndroidX and improvements to the accessibility API such as announceForAccessibility for making screen reader announcements. Also, CocoaPods are now part of React Natives’ iOS project; WebView, NetInfo and Geolocation have been extracted; Native modules are autolinked; and Upgrade Helper has been added. Native code and dependencies will need to be migrated to the new version. A new tool called jetifier will patch node_modules and serve as a temporary solution to buy time for library maintainers to upgrade.last_img read more