TECH |
Engadget Japanese |
iCloud、Apple Music、Apple TV+など複数のアップルのサービスがサービスがダウン中(3月22日未明) |
https://japanese.engadget.com/icloud-apple-music-apple-tv-apple-services-down-184241537.html
|
apple |
2022-03-21 18:42:41 |
AWS |
AWS Partner Network (APN) Blog |
Using Amazon Comprehend Medical with the Snowflake Data Cloud |
https://aws.amazon.com/blogs/apn/using-amazon-comprehend-medical-with-the-snowflake-data-cloud/
|
Using Amazon Comprehend Medical with the Snowflake Data CloudHealthcare customers use Snowflake to store all types of clinical data in a single source of truth One method for gaining insights from this data is to use Amazon Comprehend Medical which is a HIPAA eligible natural language processing service that uses machine learning to extract health data from medical text Learn how the Snowflake Data Cloud allows healthcare and life sciences organizations to centralize data in a single and secure location |
2022-03-21 18:36:43 |
AWS |
AWS Big Data Blog |
Accelerate your data warehouse migration to Amazon Redshift – Part 5 |
https://aws.amazon.com/blogs/big-data/part-5-accelerate-your-data-warehouse-migration-to-amazon-redshift/
|
Accelerate your data warehouse migration to Amazon Redshift Part This is the fifth in a series of posts We re excited to share dozens of new features to automate your schema conversion preserve your investment in existing scripts reports and applications accelerate query performance and potentially simplify your migrations from legacy data warehouses to Amazon Redshift Check out the all the posts in this series … |
2022-03-21 18:10:42 |
AWS |
AWS Government, Education, and Nonprofits Blog |
Announcing new report on digital skills training for the changing workforce in Asia Pacific and Japan |
https://aws.amazon.com/blogs/publicsector/announcing-new-report-digital-skills-training-changing-workforce-asia-pacific-japan/
|
Announcing new report on digital skills training for the changing workforce in Asia Pacific and JapanTo better understand the rapidly evolving workforce landscape and help our customers address barriers to digital skilling AWS commissioned the strategy and economics consulting firm AlphaBeta to examine the skills needs of organizations across Australia India Indonesia Japan New Zealand Singapore and South Korea In this blog post we outline key insights from the report “Building Digital Skills for the Changing Workforce and provide examples for how governments employers training providers and the technology industry can come together to meet this challenge |
2022-03-21 18:57:55 |
AWS |
AWS |
Software Development at AWS - Meet Byron, Principal Software Engineer |
https://www.youtube.com/watch?v=LK9ieh8UYII
|
Software Development at AWS Meet Byron Principal Software EngineerSoftware Engineers at AWS have the opportunity to tackle big technical problems and push boundaries of what s possible View open roles at AWS Learn about AWS culture Subscribe More AWS videos More AWS events videos ABOUT AWSAmazon Web Services AWS is the world s most comprehensive and broadly adopted cloud platform offering over fully featured services from data centers globally Millions of customers ーincluding the fastest growing startups largest enterprises and leading government agencies ーare using AWS to lower costs become more agile and innovate faster AWS AmazonWebServices CloudComputing |
2022-03-21 18:26:17 |
海外TECH |
Ars Technica |
Massive outage brought down most Apple services, including iCloud and iMessage |
https://arstechnica.com/?p=1842580
|
internal |
2022-03-21 18:53:51 |
海外TECH |
Ars Technica |
Behold, a password phishing site that can trick even savvy users |
https://arstechnica.com/?p=1842550
|
behold |
2022-03-21 18:47:05 |
海外TECH |
Ars Technica |
LG lowers the price of its new 8K OLED TV—to $13,000 |
https://arstechnica.com/?p=1842466
|
tvーto |
2022-03-21 18:06:22 |
海外TECH |
MakeUseOf |
How to Increase Dedicated Video RAM (VRAM) in Windows 10 and 11 |
https://www.makeuseof.com/tag/video-ram-windows-10/
|
dedicated |
2022-03-21 18:30:14 |
海外TECH |
DEV Community |
The Case for the Terraform Seed Workspace |
https://dev.to/aws-builders/the-case-for-the-terraform-seed-workspace-46jn
|
The Case for the Terraform Seed Workspace Why not use Terraform to manage your Terraform TLDRTerraform collaboration tools such as Terraform Cloud Scalr and SpaceLift offer the ability to be managed by Terraform Managing your infrastructure automation tool while more overhead brings in many benefits ranging from consistency to security Terraform Cloud Demo repo mencarellic terraform cloud workspace Scalr Demo repo mencarellic terraform scalr workspaceSpacelift Demo repo mencarellic terraform spacelift workspaceWhen working with a production Terraform configuration there will inevitably be a time when you outgrow the single workspace pattern Whether you split workspaces by account region service or something else soon you ll find that you need to break your Terraform configuration apart An aside on the term workspaceThe word workspace in this post follows the Terraform Cloud and Scalr definition instead of the Terraform CLI definition Hashicorp has a blurb here Terraform Cloud vs Terraform CLI Workspaces but it boils down to this Terraform CLI workspaces are infrastructure as code split into different directories and have different state files Terraform Cloud and Scalr workspaces are similar in that they have individual state files however these tools also provide more features like specific role based access control and variable configurations Also worth noting is that in Spacelift the equivalent of a workspace is a stack The Terraform configuration I work with daily consists of active workspaces and resources as of writing this Two of those workspaces have over resources a piece and as you can imagine they take quite a bit of time to run Logically breaking these workspaces down into smaller chunks will help speed those Terraform plans and applies up It also helps unlock safe developer inclusion since I can allow an application team access to a workspace that contains only their infrastructure All of a sudden one of my resource workspace turns into workspaces that have resources each with the added benefit of my engineering teams being able to iterate faster and independently of each other Of course if I m managing fifty or even thirty workspaces I probably have repeated variables across them The seed workspace lets me manage all of these variables including sensitive ones via code I also can manage teams tags VCS configuration and more The pattern lets me leverage Terraform patterns to maintain consistency and state on a critical layer of my tooling The three demo repos I created are all very straightforward and should be easy to comprehend The primary difficulty ends up being the use of the providers isn t as thoroughly tested as some of the primary Terraform providers like AWS or AzureRM so the documentation ends up having quirks For example in the Terraform Cloud demo I originally created teams for a more fleshed out sample but the provider documentation for the tfe team resource doesn t mention that the capability isn t available in the tier I was using In my Terraform Cloud Workspace demo you can see I define four key values The values for the keys ultimately live in Terraform Cloud s variable section which I can lock down using the built in access controls But since those values are a part of my seed workspace I can assign them to the workspaces I create programmatically which makes rotation a breeze as well The fifth variable I define is actually a global Terraform version that I apply to each of my workspaces This is just an example I could do the same with branch name SSH key etc This pattern is all about keeping consistency in a repeatable and secure method variable terraform version type string description Global Terraform version to use default variable azure dev key type string description Development key for Azure default variable azure prod key type string description Production key for Azure default variable aws dev key type string description Development key for AWS default variable aws prod key type string description Production key for AWS default Managing variables for your Terraform tooling with Terraform ends up carrying a lot of overhead Hashicorp has introduced something named variable sets to Terraform Cloud In Scalr you can do something similar with shell variables in your account dashboard or in your environment configuration It s a different way of doing the same thing and works just as well as what I did above The CostThere is a downside to this pattern If you are just getting started or only need a fast prototype or change why would you want to go through opening up a PR against your seed workspace and running it through Terraform It s certainly much faster to create a new workspace and wire it up with the existing VCS connection The only answer I can provide is consistency If you are a team of yourself or just two or three this pattern makes less sense But once the use of Terraform is growing and you begin to have tiers of access and experience levels with your Terraform usage perhaps this pattern makes sense ReferencesHashicorp Terraform Cloud DocumentationScalr DocumentationSpacelift Documentation |
2022-03-21 18:30:35 |
海外TECH |
DEV Community |
Azure Private Link Service + Load Balancer + AKS Limitation |
https://dev.to/lastcoolnameleft/azure-private-link-service-load-balancer-aks-limitation-44db
|
Azure Private Link Service Load Balancer AKS LimitationAs a Cloud Solution Architect for Microsoft I m privileged to work with some great companies which have unique challenges One of our large partners was migrating their solution from AWS to Azure Their configuration exposes services inside Azure Kubernetes Service AKS to their customer inside a different Azure Tenant and Subscription through Private Link Service and Private Endpoints The issue is that at this time is A single AKS cluster can only have Internal Standard Load BalancerA single Load Balancer can only have Private LinksThis means that they could expose services but not the rest of them Unfortunately the feature to enable Multiple LB s is not currently available in AKS After talking to other AKS experts we proposed the following Use PLSUse LBSpecify the SAME IP ADDRESS as part of spec loadBalancerIP in the Service YAML and use different ports for each serviceThis allowed them to reduce the number of Private Endpoints reduce their operational complexity as well as use Kubernetes native Port Mapping with minimal architectural change We reviewed this with the partner and after some Helm chart Terraform work this met their needs swimmingly Mission Accomplished |
2022-03-21 18:26:43 |
海外TECH |
DEV Community |
Use flutter at its BEST! |
https://dev.to/shalinikumari50/use-flutter-at-its-best-6cm
|
Use flutter at its BEST Flutter can help you build your next big idea and it has a lot of widgets and libraries to facilitate the development But you can use them only when you know about them so do you know any of these that can help increase your productivity Introduction ScreenIntroduction screen allows you to have a screen at launcher for example where you can explain your app This Widget is very customizable with a great design IntroductionScreen pages listPagesViewModel onDone When done button is press showBackButton false showSkipButton true skip const Text Skip done const Text Done style TextStyle fontWeight FontWeight w RichTextThe RichText widget displays text that uses multiple different styles The text to display is described using a tree of TextSpan objects each of which has an associated style that is used for that subtree RichText text TextSpan text Hello style DefaultTextStyle of context style children const lt TextSpan gt TextSpan text bold style TextStyle fontWeight FontWeight bold TextSpan text world CircleAvatarShow the user avatar inside a circle in your user s profile CircleAvatar radius child Image asset images welcome png Splash ScreenSplash screens provide a simple initial experience while your mobile app loads Add this to your pubspec yamlflutter native splash color af image assets splash pngRun this command in terminalflutter pub run flutter native splash create Status Bar and Navigation BarCustomize the status and navigation bar Add your favourite colors SystemChrome setSystemUIOverlayStyle SystemUioverlayStyle statusBarColor Colors indigoAccent systemNavigationBarColor Colors indigoAccent Cupertino WidgetsYou can set the components according to the platform if you want you screens to be more like iOS you can use cupertino Platform isAndroid CircularProgressIndicator CupertinoActivityIndicator SliderA slider in Flutter is a material design widget used for selecting a range of values Slider value currentValue onChanged newValue setState currentValue newValue min max ChipsChips are compact elements that represent an attribute text entity or action Chip label Text languages index onSelected bool value Use Google FontsSelectableText Google Fonts style GoogleFonts aguafinaScript copyWith fontSize Curved Navigation BarWho wants a cool navigation bar CurvedNavigationBar backgroundColor Colors blueAccent items icons onTap index Thank you for reading this article |
2022-03-21 18:21:03 |
海外TECH |
DEV Community |
Record and Playback in Selenium |
https://dev.to/mohammadwaseem197/record-and-playback-in-selenium-4j0d
|
Record and Playback in SeleniumAutomated Selenium testing has become quite the mainstay in efficient QA workflows Among the many features offered by this framework Record And Playback in Selenium is an especially great transition tool for professionals transitioning from manual testing to automation testing In this article let s try and understand the various components and functionalities involved in using Record and Playback in Selenium What Is Record And Playback in Selenium Record And Playback in Selenium is an easy process of creating test cases by simply using the web browser and performing several steps that need to be included in the test cases Selenium IDE is the ultimate tool for using Record and Playback Follow the steps below to get started with Selenium IDE and start recording the test cases Install Selenium IDE and add it to extensions To install Selenium IDE go to the Chrome web store Download the Selenium IDE extension Restart the web browser and the user will see the Selenium IDE extension Create a New ProjectAfter opening the Selenium IDE extension in the browser a pop up will open like the one shown in the image above Click on “Create a new project and another pop up will appear Mention the name of the project and create new test cases Create a New Test To create a new test case simply provide the name of the test The Selenium IDE will redirect to the dashboard where testers can start Record and Playback for the test cases Start with Record and PlaybackA button on the top right corner will take the QA to the target website and start recording the actions or events created while in the record mode Record And Playback Components in Selenium IDEIn the Selenium IDE recording a test simply means that there is a certain action that will be performed on the web browser and for each action the test cases will be recorded To understand this let s take a look at a simple example where Selenium will record a test that will open a website on the internet How to record a test in SeleniumAfter pressing the “rec button the IDE will open a prompt to provide the target website In this example the website link is “ After providing the website the IDE will redirect to the webpage where each action will be recorded as a step in the test case While recording testers see a symbol that states “Selenium IDE is recording test case is complete simply go back to the Selenium IDE dashboard and stop the recording How to playback a test in SeleniumPlayback in Selenium checks or runs recorded test cases to determine if the test will run without any errors like it did while recording the tests Let s understand how the playback works on the same test in the example above As soon as the recording finishes the test cases will be displayed with commands and targets as shown in the image below The playback button will run the tests and return the results in the log shown in the image If all tests run successfully the log will show the results as below In the above example the test case will open the website and click on the sign in option on the web page Example Record And Playback Sample Test CaseThe test case will perform the following Open a websiteOpen the Sign in PageEnter the values for the Sign inAssert the presence of an element on the webpage after sign in Record the test case The test case will be recorded in the same way as the previous example The test case will look like the image shown below Add Assertions To add the assertions hover over to the element the tester wants to assert in the test case Right click and select the options shown in the image Playback the test case to see if it is performing as planned Record And Playback Best PracticesAlthough it is not recommended to completely rely on Record and Playback for automation scripts there are several best practices to get the best out of this functionality The modern day record and playback tools do not rely on limited selectors like XPath etc Instead they depend on the DOM structure of each element on the page Therefore it is extremely important to monitor even the slightest changes on the application Otherwise the test cases will not work Wait commands can be a very helpful practice to avoid any delays between the action and playback Other than these record and playback in selenium is pretty simple and should not be complicated It can be used for mimicking simple automation test scripts but might fail to live up to its potential with larger and more complex test cases Record and Playback in Selenium is a very useful feature that enables the users to create test cases without having to write long scripts and without any rigid programming knowledge It breaks the barrier that most people feel with programming languages and enables people with little to no experience with testing frameworks to test their applications from start to end |
2022-03-21 18:20:49 |
海外TECH |
DEV Community |
LAZY LOADING IN ANGULAR |
https://dev.to/deepachaurasia1/lazy-loading-in-angular-3mf4
|
LAZY LOADING IN ANGULARWhat is Lazy Loading Consider our application has routes Every routes has a module associated with it that contains their respective component services and directives Here you can see we have routes RootProducts AdminsNow when user visit root route then we must be loading the respective modules and then we load other modules when it is required But does it happen The answer is NO What Angular does is it load all the modules whenever we visit any page Wouldn t it make sense if we load only respective modules Here our LAZY LOADING comes into playIn lazy loading the modules are loaded only if the user hit the route of that particular module THE ADVANTAGES OF LAZY LOADING MODULE ARE Initially we load a smaller bundle and the modules only for our root route We load more modules bundles as we hit the route for the following modules will load only when we need In this way our root route will load faster because it has a lot smaller bundle to load now And our Routing Optimisation is achieved with Lazy Loading Here you can see first root route will load and all component services related to it in modules will loadAfter this when we direct to the other route only then the modules for respective route will loaded And you will notice root have not took much time in loading Because the other modules are loading now according to requirement IMPLEMENTING LAZY LOADING I WILL COVER IN NEXT POSTThanks to Maximilian From his Udemy Course I took the referenceIf you found it helpful do follow like and share |
2022-03-21 18:18:38 |
海外TECH |
DEV Community |
Network graph dynamically in javascript |
https://dev.to/zkel/network-graph-dynamically-in-javascript-3p2c
|
Network graph dynamically in javascriptHello everyone I want to create a graph network dynamically in js I have found vis library to achieve my goal Also I would like to add some events when I clicked in a node or in an edge I have done this but I have a problem When I double click in a node I show a pop up and I have to add some extra info about the node This info I want to save and when I double click again the same node I want to have it This unfortunately does not happen I lost my info when i click save Can you help me how to fix this problem Thank you Here is my code lt DOCTYPE html gt lt html lang en gt lt head gt lt meta charset utf gt lt title gt Vis Network Manipulation Edit Edge Without Drag lt title gt lt style type text css gt body select font pt sans mynetwork position relative width px height px border px solid lightgray table legend table font size px border width px border color ddd border style solid table legend table td border width px border color ddd border style solid padding px div table content width px text align center div table description width px operation font size px popUp display none position absolute top px left px z index width px height px background color fff border style solid border width px border color ed padding px text align center node popUp display none position absolute top px left px z index width px height px background color fff border style solid border width px border color ed padding px text align center edge popUp display none position absolute top px left px z index width px height px background color fff border style solid border width px border color ed padding px text align center lt style gt lt script type text javascript src gt lt script gt lt script type text javascript src alea js gt lt script gt lt script type text javascript src exampleUtils js gt lt script gt lt script type text javascript gt var nodes null var edges null var network null randomly create some nodes and edges var data getScaleFreeNetwork var seed function setDefaultLocale var defaultLocal navigator language var select document getElementById locale select selectedIndex set fallback value for var i j select options length i lt j i if select options i getAttribute value defaultLocal select selectedIndex i break function destroy if network null network destroy network null function draw destroy nodes new vis DataSet edges new vis DataSet create a network var container document getElementById mynetwork var options layout randomSeed seed just to make sure the layout is the same when the locale is changed locale document getElementById locale value manipulation addNode function data callback filling in the popup DOM elements document getElementById node operation innerText Add Node console log Data Node data editNode data clearNodePopUp callback console log Saved Data data editNode function data callback filling in the popup DOM elements document getElementById node operation innerText Edit Node editNode data cancelNodeEdit callback addEdge function data callback if data from data to var r confirm Do you want to connect the node to itself if r true callback null return document getElementById edge operation innerText Add Edge editEdgeWithoutDrag data callback editEdge editWithoutDrag function data callback document getElementById edge operation innerText Edit Edge editEdgeWithoutDrag data callback network new vis Network container data options network on doubleClick function data callback console log Data Double Click data document getElementById eventSpanHeading innerText doubleClick event if data nodes length document getElementById node operation innerText Add Node Data console log Data data addNodeData data clearNodePopUp callback if data edges length document getElementById edge operation innerText Add Edge Data addEdgeData data clearEdgePopUp callback rigth click network on oncontext function data callback data event original event document getElementById eventSpanHeading innerText Right Click Event console log my data data if data nodes length var node data nodes document getElementById node operation innerText Edit Node Data console log Data data addNodeData data cancelNodeEdit callback console log New Data data if data edges length document getElementById edge operation innerText Edit Edge Data addEdgeData data cancelEdgeEdit callback add extra info for nodes function addNodeData data callback editNode data clearNodePopUp callback add extra info for edges function addEdgeData data callback editEdgeWithoutDrag data callback function editNode data cancelAction callback document getElementById node label value data label document getElementById node saveButton onclick saveNodeData bind this data callback document getElementById node cancelButton onclick cancelAction bind this callback document getElementById node popUp style display block Callback passed as parameter is ignored function clearNodePopUp document getElementById node saveButton onclick null document getElementById node cancelButton onclick null document getElementById node popUp style display none function cancelNodeEdit callback clearNodePopUp callback null function saveNodeData data callback console log Data data data label document getElementById node label value clearNodePopUp callback data console log New data data function editEdgeWithoutDrag data callback filling in the popup DOM elements document getElementById edge label value data label document getElementById edge saveButton onclick saveEdgeData bind this data callback document getElementById edge cancelButton onclick cancelEdgeEdit bind this callback document getElementById edge popUp style display block function clearEdgePopUp document getElementById edge saveButton onclick null document getElementById edge cancelButton onclick null document getElementById edge popUp style display none function cancelEdgeEdit callback clearEdgePopUp callback null function saveEdgeData data callback if typeof data to object data to data to id if typeof data from object data from data from id data label document getElementById edge label value clearEdgePopUp callback data function init setDefaultLocale draw lt script gt lt head gt lt body onload init gt lt h gt Editing the nodes and edges without drag localized lt h gt lt p style width px font size px text align justify gt The localization is only relevant to the manipulation buttons lt p gt lt p gt lt label for locale gt Select a locale lt label gt lt select id locale onchange draw gt lt option value en gt en lt option gt lt option value cn gt cn lt option gt lt option value cs gt cs lt option gt lt option value de gt de lt option gt lt option value es gt es lt option gt lt option value fr gt fr lt option gt lt option value it gt it lt option gt lt option value nl gt nl lt option gt lt option value pt br gt pt lt option gt lt option value ru gt ru lt option gt lt option value uk gt uk lt option gt lt select gt lt p gt lt Node part gt lt div id node popUp gt lt span id node operation gt node lt span gt lt br gt lt table style margin auto gt lt tr gt lt td gt id lt td gt lt td gt lt input id node id value new value gt lt td gt lt tr gt lt tr gt lt td gt label lt td gt lt td gt lt input id node label value new value gt lt td gt lt tr gt lt table gt lt input type button value save id node saveButton gt lt input type button value cancel id node cancelButton gt lt div gt lt Edge Part gt lt div id edge popUp gt lt span id edge operation gt edge lt span gt lt br gt lt table style margin auto gt lt tr gt lt td gt label lt td gt lt td gt lt input id edge label value new value gt lt td gt lt tr gt lt table gt lt input type button value save id edge saveButton gt lt input type button value cancel id edge cancelButton gt lt div gt lt br gt lt div id mynetwork gt lt div gt lt h id eventSpanHeading gt lt h gt lt body gt lt html gt |
2022-03-21 18:15:01 |
海外TECH |
DEV Community |
Do you know any way or trick to convert a website to android and ios app? |
https://dev.to/demuchi/do-you-know-any-way-or-trick-to-convert-a-website-to-android-and-ios-app-5gp1
|
thanks |
2022-03-21 18:11:38 |
海外TECH |
DEV Community |
Terraform Module Testing with LocalStack and GitHub Actions |
https://dev.to/aws-builders/terraform-module-testing-with-localstack-and-github-actions-7i8
|
Terraform Module Testing with LocalStack and GitHub ActionsTesting your infrastructure as code is just as important as testing your application code And it doesn t have to be a nightmare TLDRWith a combination of LocalStack and GitHub Actions you can do easy and effective testing for most of your Terraform codeThis method reduces external dependencies on libraries and knowing best practices for programming languages like Ruby and GoLang Given this is essentially a mocked AWS service there are limitations in the service offering See demo repo here mencarellic terraform aws moduleWhen I first saw production Terraform code it was a single repository split into three directories one for the production account one for a development account and one for the modules Fast forward a few years and I m now with a new company with a similar format except we use two clouds and have different environments across those clouds When I checked earlier our modules sub directory was lines across modules Needless to say we re in the midst of moving from using a single repo to using a repo per module and leveraging Terraform Cloud s Private Registry Now the question is when I push changes to a module how do I ensure that module will validate plan and apply successfully without too much interruption in the release workflow The validate and plan are pretty straightforward I can test it locally with a CLI validate and plan Applies are trickier and no one wants to debug Terraform failures while the rest of the team is trying to publish their changes There are plenty of patterns such as using sandbox or testing accounts and Terraform test frameworks like Kitchen or Terratest But I don t want to introduce another account and I definitely don t want to introduce more code to manage That s where LocalStack fits in LocalStackLocalStack self describes in their GitHub repo as “A fully functional local AWS cloud stack… It is a feature rich AWS service that runs in a container with pretty wide coverage The full list of services can be found here AWS Service Feature Coverage The community version contains a reasonable number of services that can cover a lot of different modules the Pro feature set contains some major parts of the AWS stack notably API Gateway v CloudFront and RDS The setup for Localstack is pretty straight forward Pull the docker image and run it The development team released a CLI tool that helps with orchestration so what we end up running is pip install localstack docker pull localstack localstack localstack start dFor setting up Terraform to work with LocalStack the team over there has an integration page with details though I ll cover some here as well The main thing that you need to know is that you ll be setting some custom endpoints in your provider configuration to tell Terraform to reach out to localhost instead of AWS for the plan and apply steps GitHub ActionThe GitHub Action workflow file really only needs to do three things Installs TerraformInstalls LocalStack CLI and starts the Docker container See above Runs terraform apply auto approveThe workflow file I have does a couple other things based on personal preference but you can really boil the file down to less than twenty lines if you really want to Some of the additional things I do and why are Ignore the main branch since I don t want this to run on pushes to that branch Only feature branchesUse ASDF and a tool versions file to manage my Terraform version You could also use the GitHub Action hashicorp setup terraform if desiredRun a terraform plan before the apply to make sure I can see in the logs whether a failure is a plan or apply error Bringing It All TogetherOnce you get your GitHub Action workflow file setup you just need to add a directory where you can place your tests Inside the directory you can have a single file where you define your provider and module block You ll need to force the provider to target your Localstack endpoints instead of the live AWS endpoints You can do that with the endpoints block endpoints apigateway http localhost apigatewayv http localhost cloudformation http localhost cloudwatch http localhost dynamodb http localhost ec http localhost es http localhost elasticache http localhost firehose http localhost iam http localhost kinesis http localhost kms http localhost lambda http localhost rds http localhost redshift http localhost route http localhost s secretsmanager http localhost ses http localhost sns http localhost sqs http localhost ssm http localhost stepfunctions http localhost sts http localhost After that you can open up some PRs to test your positive and negative test cases References and Docs I UsedTerraform DocsLocalStack DocsLocalStack Terraform Integration DocsGitHub Actions DocsExample Repo mencarellic terraform aws module |
2022-03-21 18:09:44 |
海外TECH |
DEV Community |
Simple Toggle Button(On/Off) |
https://dev.to/asapsonter/simple-toggle-buttononoff-3k2i
|
Simple Toggle Button On Off Hi guys I was doing a project that required an ON OFF switch I kinda had a tough time creating a switch button After finding my way around I thought this migth be helpful for other people lt div class container gt lt div class toggle gt lt div class toggle btn onclick Animatedtoggle gt lt div gt lt div gt lt div class text gt OFF lt div gt lt div gt Create elements toggle toggle btn and a text with OFF property Create a button property inside the the toggle btn div let toggle document querySelector toggle let text document querySelector text function Animatedtoggle toggle classList toggle active if toggle classList contains active text innerHTML ON else text innerHTML OFF queryselect element toggel to variable toggle do the same thing with text classList toggle active and then write a if loop for true ON and else OFF Below is the full code template including stylesheet lt DOCTYPE html gt lt html lang en gt lt head gt lt meta charset UTF gt lt meta http equiv X UA Compatible content IE edge gt lt meta name viewport content width device width initial scale gt lt title gt button lt title gt lt link rel stylesheet href stylesheet css gt lt head gt lt body gt lt div class container gt lt div class toggle gt lt div class toggle btn onclick Animatedtoggle gt lt div gt lt div gt lt div class text gt OFF lt div gt lt div gt lt script gt let toggle document querySelector toggle let text document querySelector text function Animatedtoggle toggle classList toggle active if toggle classList contains active text innerHTML ON else text innerHTML OFF lt script gt lt body gt lt html gt margin padding box sizing border box body height vh position relative background aquamarine container position absolute top left transform translate height px display flex align items center justify content center container toggle position absolute top left width px height px background rgb border radius px cursor pointer transition container toggle toggle btn position absolute top px left px width px height px background rgb border radius px transition container toggle active background whitesmoke container toggle active toggle btn left px text position absolute left cm font size rem font family Lucida Sans Lucida Sans Regular Lucida Grande Lucida Sans Unicode Geneva Verdana sans serif margin left px PLS FOLLOW MY TWITTER HANDLE |
2022-03-21 18:08:00 |
海外TECH |
DEV Community |
How to Avoid Estimating Time Using the Agile Metrics Velocity and Capacity |
https://dev.to/perssondennis/how-to-avoid-estimating-time-using-the-agile-metrics-velocity-and-capacity-2fo1
|
How to Avoid Estimating Time Using the Agile Metrics Velocity and CapacityHumans are bad at estimating time A lot of companies try to replace time with points but fails to do so This article describes how to properly estimate work in a time independent way by calculating velocity and capacity the way agile methodologies does it I read this article on DEV asking about how to deal with estimates It s a great question to ask and it reminds me of my days at the University Teachers told me not to estimate projects in time Later I became a teacher myself and I brought that knowledge on to my own students Honestly I didn t really understand back then how to actually do that I started working at a company in the Volvo Group concern and my team used points for estimations Except they didn t The truth is they only believed they were doing that but in reality they used time as a measurement Roughly they defined each point as one day of work for two developers pair programming They empathized we shouldn t think about it as time rather as points In the end the points were still bound to time so we were in reality still estimating time I must say I was a bit tired of people urging to use points over time when it in practice was the same thing It was somewhere there I actually figured out how to get time out of the picture completely How to Use Agile Metrics to Avoid Measuring TimeSubstituting time for points is a great start It s hard to estimate what time something will take and it s even harder to estimate how much time will be spent on other tasks assignments meetings bug fixes testing and unexpected hindrances The tricky part is how to make the points time independent The solution to how to do that is to calculate a velocity using the outcome of the previous work Velocity is basically the amount of story points your team succeeds to develop in a sprint on average When you know the velocity you can calculate what capacity the team has in an upcoming sprint The capacity is what is left of the velocity points after having removed team member vacancies and time allocated to other work such as maintenance and bug fixes Even though many people know about the terms velocity and capacity many teams neglect the velocity and fixates the capacity to a constant number instead of calculating it from on the velocity By doing that they miss the whole point with it The purpose of velocity and capacity is to make points time independent A constant capacity is nothing other than masqueraded time By recalculating the velocity the team s capacity will become dependent on the team s actual work effort rather than time It doesn t matter what you call it it s still time behind the mask if you ignore velocity You Can Not Compare Developer PerformanceNot all developers work equally fast One story can take hours for one developer and days for another After a couple of month or so the second developer may have become better and can work faster than before You can t easily estimate performance of developers and say that one developer works half as fast as another one I will vary dependent on work tasks and as time goes One thing you can do though is to evaluate performance That is exactly what is done when you calculate a velocity You look at the tasks that have been done recently by the whole team to get a concrete number of which velocity the team has That number can be used to estimate what capacity the team has for the work ahead Estimation cycle Use the velocity when planning upcoming work The Process of Planning a SprintEnough of chattering Let s describe how to plan a sprint the agile way and how to get the estimation to be time independent Break Down Features Into StoriesMake sure you have divided each feature to be developed into small tasks stories There s no way you will succeed estimating tasks that are greater than a few days or a week in size On top of that destructuring features into smaller tasks will help you plan your work and foresee possible pitfalls Assign Points to StoriesLet the developer team together estimate how many points each story should be assigned You can preferably use Planning Poker to let every team member vote without being influenced by other teammates When assigning points you can think of some abstract size of the story Is it a small mid sized or large task Or you can actually think in time will it take around one three or five days to implement That may sound strange since the goal is to avoid thinking in time but it s actually completely fine and it falls natural to humans to do that Merely by using the approach I describe in this article you will go from speaking about points and estimating time to speak about time and estimating points If your idea of one day of work is inaccurate that won t be an issue When the velocity is adjusted later on your idea of time will be corrected so the points you assign to the task reflects you real work No worries if you get headache trying to understand that we will get back to that later DevelopYou can t spend all time in meetings Do the work you have planned to do If you are familiar with Scrum and agile methodologies this will be you sprint commonly a period of two weeks Adjust the VelocityThis is the step most people forget about which is unfortunate Without this step you are measuring time and not points What you should do here is to calculate how many points you had time to develop during the sprint That is the velocity you had that sprint Take the average of that velocity and each velocity a few sprints back in time and the result is the velocity your team have RepeatContinue the process from the beginning starting by breaking down new stories and then assigning them points This time you will have another velocity than you had when you planned your previous sprint hopefully better reflecting how much work you actually will have time to do Regardless whether you thought in points or if you thought in time when you planned your last sprint your new velocity will give you either less or more points when you calculate the capacity you have in the next sprint Note The example below assumes the complete velocity is counted as capacity Normally you will count away parts of the velocity when determining the capacity to adjust for absence and maintenance etc Maybe you originally had a capacity of ten points for a two weeks long sprint and you planned to do ten one point stories If you had time to do some extra work and your new velocity turned out to be points then each day in the sprint would equal to points When you plan your next sprint you can continue estimating the stories the same way you did the last sprint Your new velocity will correct the estimation error you did when you estimated the stories What you thought to be one point or one day of work turned out to take around days ≈ With the new velocity at points per sprint you will get the capacity to plan points into the next sprint which is more likely to better match the actual workload you will have time to complete Repeating this process for each sprint will eventually make your estimations fairly accurate If you estimate to fit ten one point stories into one ten days sprint and it turns out you have time for of them then your velocity that sprint was points i e points per day ConclusionAll teams try to estimate workload a lot of them using agile methods like Scrum Many of them are aware of the concepts of velocity and capacity and knows they should be measuring points rather than time when estimating their stories Unfortunately a lot of teams forget to consider their velocity when they calculate their capacity for a sprint When a team forgets to consider the velocity their estimation in story points becomes nothing other than an estimation of time They will plan each sprint with a fixed number of points which in turn will correlate to a fixed amount of time This is a problem because humans aren t good at estimating time By ensuring to recalculate the velocity after each sprint you will be able to measure how much work you are able to finish in reality The recalculated velocity will adjust for any misestimations you do when the work is planned Thanks for reading Dennis |
2022-03-21 18:05:52 |
Apple |
AppleInsider - Frontpage News |
Ford adds Apple Maps EV routing support to Mustang Mach-E models |
https://appleinsider.com/articles/22/03/21/ford-adds-apple-maps-ev-routing-support-to-mustang-mach-e-models?utm_medium=rss
|
Ford adds Apple Maps EV routing support to Mustang Mach E modelsFord Mach E drivers are now able to take advantage of the EV routing feature in Apple Maps after updating to the latest iOS update Credit FordThe feature is exclusively available through CarPlay on the Ford Mustang Mach E currently though Ford says it has plans to bring it to the F Lightning and E Transit vehicles in the future Read more |
2022-03-21 18:49:35 |
Apple |
AppleInsider - Frontpage News |
Myriad iCloud services down globally, cause unknown |
https://appleinsider.com/articles/22/03/21/myriad-icloud-services-down-globally-cause-unknown?utm_medium=rss
|
Myriad iCloud services down globally cause unknownApple s iCloud appears to be experiencing issues with unexpected downtime impacting some of Apple s online services for a number of users Starting from p m eastern on Monday AppleInsider staff encountered problems with various Apple services This included iCloud going down which is a key element that impacts other services and apps with online components This included Mail which became unreliable in fetching messages for multiple staff Some found Apple News wasn t loading stories while Apple Music on Mac fails to bring up any pages at all Read more |
2022-03-21 18:45:52 |
海外TECH |
Engadget |
Formula E will unveil its Gen3 car on April 28th in Monaco |
https://www.engadget.com/formula-e-gen3-unveiling-april-28-monaco-183606020.html?src=rss
|
Formula E will unveil its Gen car on April th in MonacoAfter months of teasing Formula E and the Federation Internationale de l Automobile FIA announced today they will finally unveil their new Gen all electric car at an event in Monaco on April th The two organizations said fans would be able to watch the unveiling through their associated digital channels Formula E teams will begin using the car at the start of the season with testing expected to begin this spring The FIA first shared details on the Gen at the end of last year revealing it would feature a motor capable of outputting kW of power about brake horsepower and a top speed of miles per hour It will also include front and rear powertrains a first for a formula car With a total of kW of power the Gen will feature more than double the regenerative capability of Formula E s current Gen vehicle The FIA has also promised the Gen will be its most sustainable vehicle to date with a net zero carbon footprint thanks to recyclable carbon fiber parts and other design considerations |
2022-03-21 18:36:06 |
海外科学 |
NYT > Science |
The Smaller Bombs That Could Turn Ukraine Into a Nuclear War Zone |
https://www.nytimes.com/2022/03/21/science/russia-nuclear-ukraine.html
|
The Smaller Bombs That Could Turn Ukraine Into a Nuclear War ZoneMilitary experts say a new generation of nuclear weapons has raised the risk that Mr Putin might introduce less destructive atomic arms into the battlefields in and around Ukraine |
2022-03-21 18:53:28 |
海外科学 |
NYT > Science |
U.N. Chief Warns of ‘Catastrophe’ With Continued Use of Fossil Fuels |
https://www.nytimes.com/2022/03/21/climate/united-nations-fossil-fuels-climate-crisis.html
|
U N Chief Warns of Catastrophe With Continued Use of Fossil FuelsAntónio Guterres the United Nations secretary general said instead of replacing Russian oil gas and coal nations must pivot to clean energy |
2022-03-21 18:16:32 |
ニュース |
BBC News - Home |
Nazanin Zaghari-Ratcliffe: I should have been freed six years ago |
https://www.bbc.co.uk/news/uk-60819018?at_medium=RSS&at_campaign=KARANGA
|
agothe |
2022-03-21 18:49:31 |
ニュース |
BBC News - Home |
Police send over 100 questionnaires on No 10 parties |
https://www.bbc.co.uk/news/uk-politics-60827451?at_medium=RSS&at_campaign=KARANGA
|
downing |
2022-03-21 18:23:53 |
ニュース |
BBC News - Home |
New P&O crew on less than £2 an hour, union claims |
https://www.bbc.co.uk/news/business-60821266?at_medium=RSS&at_campaign=KARANGA
|
bottom |
2022-03-21 18:48:26 |
ニュース |
BBC News - Home |
Sir David Amess MP murder trial hears accused targeted Michael Gove |
https://www.bbc.co.uk/news/uk-england-essex-60822935?at_medium=RSS&at_campaign=KARANGA
|
michael |
2022-03-21 18:30:32 |
ニュース |
BBC News - Home |
Mariupol: Four reasons the city matters so much to Russia |
https://www.bbc.co.uk/news/world-europe-60825226?at_medium=RSS&at_campaign=KARANGA
|
campaign |
2022-03-21 18:15:02 |
ニュース |
BBC News - Home |
Chelsea: Centricus bid to buy club intends to 'maintain existing management' |
https://www.bbc.co.uk/sport/football/60823017?at_medium=RSS&at_campaign=KARANGA
|
Chelsea Centricus bid to buy club intends to x maintain existing management x British investment firm Centricus says it wants to maintain and support existing management in bid to buy Chelsea |
2022-03-21 18:26:22 |
ニュース |
BBC News - Home |
Holders Chelsea to face Arsenal in Women's FA Cup semi-finals |
https://www.bbc.co.uk/sport/football/60828844?at_medium=RSS&at_campaign=KARANGA
|
season |
2022-03-21 18:47:36 |
ニュース |
BBC News - Home |
Collingwood interested in permanent England role |
https://www.bbc.co.uk/sport/cricket/60819639?at_medium=RSS&at_campaign=KARANGA
|
permanent |
2022-03-21 18:30:27 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
ウクライナ情勢が日本にもたらす「ジリ貧家計」、物価上昇率2%は余裕で達成? - News&Analysis |
https://diamond.jp/articles/-/299564
|
ウクライナ情勢が日本にもたらす「ジリ貧家計」、物価上昇率は余裕で達成NewsampampAnalysis庶民の食卓は、相次ぐ食品値上げにおびやかされている。 |
2022-03-22 03:50:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
米国の持ち家評価額、昨年は賃金収入上回る上昇 - WSJ PickUp |
https://diamond.jp/articles/-/299554
|
wsjpickup |
2022-03-22 03:45:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
プーチン支持なお絶大、ロシア田舎町の熱気 - WSJ PickUp |
https://diamond.jp/articles/-/299555
|
wsjpickup |
2022-03-22 03:40:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
ロシア戦車、ウクライナが墓場に 現代戦にぜい弱 - WSJ PickUp |
https://diamond.jp/articles/-/299556
|
wsjpickup |
2022-03-22 03:35:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
「市販薬を大量摂取」の若者たちが増加する深刻な理由とは - ニュース3面鏡 |
https://diamond.jp/articles/-/296433
|
女子高生 |
2022-03-22 03:35:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
アシックスがコロナ禍で始めた「オンラインマラソン」の驚くべき盛況ぶり - 識者に聞く「幸せな運動」のススメ |
https://diamond.jp/articles/-/299682
|
アシックスがコロナ禍で始めた「オンラインマラソン」の驚くべき盛況ぶり識者に聞く「幸せな運動」のススメ月日の「東京マラソン」と並行して実施されたのが、「バーチャル東京マラソン」だ。 |
2022-03-22 03:30:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
M&A後の組織・職場づくりの視点とは? - M&A後の組織・職場づくり入門 |
https://diamond.jp/articles/-/299063
|
MA後の組織・職場づくりの視点とはMampampA後の組織・職場づくり入門日本企業のMAが急増しており、年は過去最多の件を記録した。 |
2022-03-22 03:25:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
ひろゆきが呆れる「正義中毒の人の対処法」ベスト1 - 1%の努力 |
https://diamond.jp/articles/-/299049
|
youtube |
2022-03-22 03:20:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
「優秀だけど、突き抜けてない」と言われた人がやるべき、ちょっとした工夫 - 起業家の思考法 |
https://diamond.jp/articles/-/299390
|
|
2022-03-22 03:15:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
投資の「優良銘柄」と「優良企業」の違いとは?【投資のプロが東大生に教える】 - 東大金融研究会のお金超講義 |
https://diamond.jp/articles/-/299474
|
投資の「優良銘柄」と「優良企業」の違いとは【投資のプロが東大生に教える】東大金融研究会のお金超講義年月に発足した東大金融研究会。 |
2022-03-22 03:10:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
6000軒を片づけた家政婦が教える「無限にモノが増えるリビング・ダイニング」整理のコツ - 家じゅうの「めんどくさい」をなくす。 |
https://diamond.jp/articles/-/299518
|
軒を片づけた家政婦が教える「無限にモノが増えるリビング・ダイニング」整理のコツ家じゅうの「めんどくさい」をなくす。 |
2022-03-22 03:05:00 |
コメント
コメントを投稿