{"id":2355,"date":"2025-09-24T06:28:32","date_gmt":"2025-09-24T13:28:32","guid":{"rendered":"https:\/\/www.angulartraining.com\/daily-newsletter\/?p=2355"},"modified":"2025-09-24T06:28:34","modified_gmt":"2025-09-24T13:28:34","slug":"dates-pipes-and-coupons","status":"publish","type":"post","link":"https:\/\/www.angulartraining.com\/daily-newsletter\/dates-pipes-and-coupons\/","title":{"rendered":"Dates, pipes, and coupons!"},"content":{"rendered":"\n<p>This week, we&#8217;re using the 3-2-1 format of the newsletter again. I&#8217;m posting a few essential articles to revisit, updates to know about, and one question to ponder:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Three articles to revisit:<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Still using Moment.js for date formatting? Take a look at <a href=\"https:\/\/www.angulartraining.com\/daily-newsletter\/how-to-do-advanced-date-formatting\/\">date-fns<\/a> as a possible alternative. <\/li>\n\n\n\n<li>If you&#8217;re using the date pipe anywhere, including in your TypeScript code, knowing <a href=\"https:\/\/www.angulartraining.com\/daily-newsletter\/formatting-functions-in-angular\/\">how to format dates without pipes<\/a> might help.<\/li>\n\n\n\n<li>Also, if you&#8217;re constantly using the same date format with your pipes, you can <a href=\"https:\/\/www.angulartraining.com\/daily-newsletter\/date-pipe-default-format-and-timezone\/\">set the default format once for all<\/a>, so you don&#8217;t need to repeat yourself in all your templates.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Two quick updates:<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>I&#8217;m speaking at the <a href=\"https:\/\/javascript-conference.com\/angular\/\" target=\"_blank\" rel=\"noopener\" title=\"\">International JavaScript conference in New York City<\/a>, and I&#8217;m pretty much running the entire Angular track at the event, with two talks and one full-day workshop. The event can also be attended remotely from home. As a reader of this email, you can get 10% off your conference ticket by using coupon code <strong>ijsny-alain<\/strong>. And we&#8217;re also throwing a <a href=\"https:\/\/certificates.dev\/angular\" target=\"_blank\" rel=\"noopener\" title=\"\">certificates.dev<\/a> coupon in a mix, you can get <strong>$25 Off<\/strong> ANY mid-level or senior certification using code <strong>IJCNY25<\/strong>.<\/li>\n\n\n\n<li><strong>Angular Signal Forms will officially become experimental in Angular 21<\/strong>, and the first documentation is now live! You can start exploring the new <a href=\"https:\/\/next.angular.dev\/api\/forms\/signals\/form\">signal forms API<\/a> to see how forms will work with Angular&#8217;s signal-based approach. <\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">One question to ponder:<\/h2>\n\n\n\n<p>Are you ready for Angular 21? If not, what&#8217;s your biggest concern or impediment to upgrade? The introduction of experimental Signal Forms is just one of many changes coming that might reshape how we build Angular applications.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This week, we&#8217;re using the 3-2-1 format of the newsletter again. I&#8217;m posting a few essential articles to revisit, updates to know about, and one question to ponder: Three articles to revisit: Two quick updates: One question to ponder: Are you ready for Angular 21? If not, what&#8217;s your biggest concern or impediment to upgrade? [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-2355","post","type-post","status-publish","format-standard","hentry","category-angular"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/posts\/2355","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/comments?post=2355"}],"version-history":[{"count":1,"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/posts\/2355\/revisions"}],"predecessor-version":[{"id":2356,"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/posts\/2355\/revisions\/2356"}],"wp:attachment":[{"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/media?parent=2355"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/categories?post=2355"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.angulartraining.com\/daily-newsletter\/wp-json\/wp\/v2\/tags?post=2355"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}