Sai số làm tròn trong quá trình chuyển đổi

Điểm trung bình chung là \(2{,}33\) chứng nhận khả năng phù hợp với trường trung học ở Bavaria, \(2{,}34\) không còn chứng nhận khả năng phù hợp của một người đối với trường trung học. Với ranh giới rõ ràng này, thứ tự của hai vòng có thể quyết định trẻ sẽ rơi vào bên nào. Những hậu quả có thể xảy ra của hiệu ứng làm tròn này được Günther Felbinger thảo luận trong một bài đăng trên blog . Vì hứng thú nên tôi đã tự mình tính toán các tác động trên tất cả các kết hợp cấp độ được phép trong mô hình.

.­.­.

Đặt lại xác thực hai yếu tố (2FA) của Facebook

Do một sự cố ngoài ý muốn, tất cả các mã đã xuất đều bị xóa trong quá trình xuất dữ liệu trên Google Authenticator ; tôi đã lưu mã khôi phục cho tất cả các tài khoản, nhưng không lưu mã của Facebook . Tôi không cần thiết phải làm vậy gấp, vì tôi đã không sử dụng mạng xã hội này trong nhiều năm, nhưng tôi muốn xem liệu mình có thể lấy lại quyền truy cập bằng cách nào đó hay không. Và đó là khởi đầu của một cuộc hành trình.

.­.­.

Ai biết những điều như vậy chứ?

Đôi khi chỉ một câu hỏi trong chương trình buổi tối sớm (trong trường hợp này là từ người dẫn chương trình đáng kính Kai Pflaume) cũng đủ để biến đêm chung kết của một chương trình đố vui vô hại thành một bài toán tối ưu hóa nhỏ. Đó chính xác là những gì xảy ra trong chương trình "Ai Biết Gì?". Câu hỏi chính: Thể loại đã được xác định, câu trả lời vẫn chưa rõ ràng – nhưng những rủi ro hiện tại đã quyết định kết quả nào vẫn được coi là tốt.

.­.­.

Rút gọn đúng hay sai

Kiến thức cơ bản về phân số: Rút gọn các thừa số giống nhau là được phép. Rút gọn các chữ số giống nhau thì không được phép. Tuy nhiên, vẫn có những phân số mà phép rút gọn bị cấm này dường như vẫn có tác dụng. Chúng ta nên xem xét kỹ hơn một nhóm phân số đặc biệt đơn giản: các phân số có cùng một chữ số xuất hiện ở cuối tử số và đầu mẫu số.

.­.­.

Tàu im lặng

Nhiệm vụ cờ vua giải trí làm cuộc sống thêm ngọt ngào. Nhiệm vụ hôm nay: Nước đi của Trắng, chia đôi. Vị trí này đến từ Erich Brunner vào năm 1926 - và nó chính xác là thú vị bởi vì nó trông không giống một vị trí hai nước đi thông thường chút nào. Bạn thử đặt giá cờ trực tiếp, kiểm tra nước đi của quân xe, tìm nước đi của quân hậu và sau vài phút bạn nhận thấy: Chúng không phải là những ý tưởng rõ ràng.

.­.­.

Let's Encrypt DomainFactory

Một số gói lưu trữ chia sẻ với cPanel không cung cấp AutoSSL hoặc chỉ cung cấp chúng ở mức giá cao hơn. Kết quả: Bạn không thể cấp chứng chỉ Let's Encrypt miễn phí qua giao diện cPanel và tất cả các miền đều bị kẹt trên chứng chỉ tự ký. Trình duyệt hiển thị trang là “không an toàn”. Cách giải quyết: hãy tự mình lấy chứng chỉ bằng acme.sh và cài đặt nó qua cPanel UAPI - tự động gia hạn mà không cần AutoSSL.

.­.­.

Tính chia hết

Tại Ai Muốn Trở Thành Triệu Phú gần đây có một câu hỏi nhỏ hay mà Günther Jauch rõ ràng đã phải suy nghĩ: “Một số luôn chia hết cho \(4\) không có số dư nếu số đó được hình thành từ hai chữ số cuối của nó...?” – và đây chính xác là lúc bạn phải suy nghĩ toán học trong giây lát thay vì để bản thân bị thu hút bởi những điều phiền nhiễu. Bởi vì mặc dù các câu trả lời như “chẵn”, “chứa \(0\) ” hoặc “tổng chéo bằng \(4\) ” thoạt nghe có vẻ hợp lý, nhưng câu trả lời đúng lại dựa trên một thuộc tính đơn giản của hệ thập phân của chúng ta.

.­.­.

Trí tuệ nhân tạo đấu với Erdős

Một số bài toán toán học được trình bày đơn giản đến mức có thể giải thích cho một đứa trẻ, nhưng lại khó đến nỗi chúng chiếm dụng thời gian của nhiều thế hệ các nhà toán học. Một bài toán như vậy là bài toán khoảng cách đơn vị: Đặt \(n\) điểm trên mặt phẳng. Hỏi có bao nhiêu cặp điểm có khoảng cách chính xác bằng \(1\) ? Bài toán này bắt nguồn từ Paul Erdős và đã được nghiên cứu từ năm 1946. OpenAI vừa công bố rằng một mô hình nội bộ đã bác bỏ một giả thuyết lâu đời về bài toán này.

.­.­.

Mã số trong các số nguyên tố

Vào tháng 10 năm 1999, một nhóm do Jon Lech Johansen, khi đó mới 16 tuổi, người Na Uy, dẫn đầu đã phát hành chương trình DeCSS để phá vỡ hệ thống mã hóa nội dung (CSS) bảo vệ phát lại DVD. CSS sử dụng mã hóa 40 bit, với các khóa được phân phối cho các nhà sản xuất được cấp phép, để hạn chế việc phát lại DVD. Vì việc phân phối mã này thuộc phạm vi Đạo luật DMCA của Hoa Kỳ và bị cấm theo pháp luật, các nhà hoạt động đã tìm cách ngụy trang mã này dưới dạng một thực thể toán học.

.­.­.

ℚ chưa hoàn chỉnh

Thoạt nhìn, các số hữu tỷ \(\mathbb{Q}\) có vẻ giống như một sự liên tục không có khoảng cách: giữa mỗi hai phân số luôn có một phân số khác. Nhưng ấn tượng này là sai lầm: có những tập hợp số hữu tỷ bị chặn, nhưng số tối thiểu hoặc số tối thiểu của chúng đơn giản là không tồn tại trong \(\mathbb{Q}\) . Lý do nằm ở sự tồn tại của các số vô tỷ như \(\sqrt{2}\) , có thể nói, chúng xé toạc những lỗ vô hình trên trục số hữu tỷ.

.­.­.

Thanh Boss trong Minecraft

PaperMC cung cấp một nền tảng đơn giản để mở rộng máy chủ Minecraft bằng các plugin nhỏ, mà không yêu cầu người chơi phải cài đặt bất cứ thứ gì. Khi phát triển plugin, câu hỏi đặt ra là làm thế nào để hiển thị thông tin động cho người chơi. Câu trả lời nằm ở một tính năng gốc thường bị bỏ qua: thanh thông tin trùm . Ban đầu được thiết kế cho các trùm cuối, thanh thông tin trùm có thể được tái sử dụng và dùng như một HUD tối giản.

.­.­.

IPv6

Giao thức Internet (IP) là nền tảng của tất cả các ứng dụng internet. Các giao thức khác, như TCP và UDP, được xây dựng dựa trên nó, lần lượt truyền tải các dịch vụ như HTTP(S), email, điện thoại và DNS. IPv6 đang thay thế giao thức IPv4 cũ hơn vì không gian địa chỉ tương đối nhỏ của nó, khoảng 4 tỷ địa chỉ, đã cạn kiệt từ lâu. IPv6 hiện nay gần như phổ biến và hữu ích hơn nhiều người nhận ra.

.­.­.

Git không cần SSH

Ai mà chưa từng trải qua tình huống này: Bạn cần tải nhanh một thứ gì đó trên gói lưu trữ chia sẻ giá rẻ (ví dụ: từ IONOS). git pull Bạn có thể muốn chạy một chương trình hoặc sử dụng cơ sở dữ liệu, nhưng nhà cung cấp dịch vụ lưu trữ của bạn không cấp quyền truy cập SSH – hoặc chỉ có trong các gói dịch vụ đắt tiền hơn. Thông thường, lựa chọn duy nhất còn lại là quy trình tốn thời gian tải lên tệp tin thủ công qua FTP, điều này làm cho việc triển khai trở nên phức tạp không cần thiết và dễ xảy ra lỗi.

.­.­.

Amazon và thuế bán hàng

Amazon là kênh mua sắm hoàn hảo cho người làm việc tự do: nhanh chóng, giá cả phải chăng và mọi thứ đều có ở một nơi. Amazon hiện đã cung cấp hóa đơn kịp thời và dễ dàng tải xuống (ngay cả đối với các giao dịch mua trên Marketplace). Cho dù đó là một chiếc máy tính xách tay mới, một chiếc ghế văn phòng, hay chỉ là một đơn đặt hàng nhanh chóng giấy in – bạn có thể đặt hàng chỉ với vài cú nhấp chuột, thường là thông qua tài khoản cá nhân mà bạn đã sử dụng trong nhiều năm.

.­.­.

trạng thái git 2.0

Bất cứ ai là người đầu tiên vào buổi sáng git status gõ phím rồi uống cà phê sẽ thích người trợ giúp nhỏ này. Đặc biệt khi có nhiều dự án web đang được phát triển song song, một dự án rất đáng giá tổng quan nhỏ gọn: Cây làm việc sạch sẽ ở đâu, những thay đổi chưa được hợp nhất đang treo ở đâu và thao tác kéo/đẩy đang chờ ở đâu? Một công cụ shell nhỏ sẽ thực hiện được thủ thuật - miễn là nó xử lý mạnh mẽ các khoảng trắng/Unicode trong đường dẫn và không bị nghẹt khi treo điều khiển từ xa.

.­.­.

Ngôn ngữ và logic

Có một bài hát hay của Cali Rose tên là "It Is What It Is and It Ain't What Is Ain't ". Có thể đơn giản hóa thành "It is what it is and it isn't what it isn't". Chỉ với vài từ, cả một thế giới chân lý có thể được khám phá. Bằng cách biến tấu và kết hợp hai phần, một sân chơi nhỏ cho logic hiện ra. Giờ bạn có thể lấy câu này và tìm những ví dụ thú vị khác.

.­.­.

Tự động hóa Thunderbird

Thunderbird đã trải qua một sự hồi sinh đáng kể kể từ năm 2022. Sau nhiều năm trì trệ, Tổ chức Mozilla một lần nữa tích cực đầu tư vào việc phát triển nó. Sáng kiến Supernova (Thunderbird 115+) đã mang đến những cải tiến hiện đại cơ bản như tích hợp Rust cho các thành phần quan trọng về hiệu năng, giao diện người dùng hiện đại dựa trên Web Components và hỗ trợ Exchange gốc thông qua API EWS/Microsoft Graph.

.­.­.

Toán tử Walrus trong PHP

Vào tháng 10 năm 2019, Python 3.8 đã giới thiệu toán tử Walrus (:=) thông qua PEP 572 – và do đó đã gây ra một trong những cuộc tranh cãi lớn nhất trong lịch sử ngôn ngữ lập trình. Cuộc tranh luận gay gắt đến mức nhà phát minh Python Guido van Rossum vào tháng 7 năm 2018 – thậm chí trước khi phát hành – vị trí của ông là BDFL (Nhà độc tài nhân từ trọn đời). Kể từ đầu năm 2019, Python được quản lý bởi một Hội đồng chỉ đạo được bầu.

.­.­.

Của Celsius và Fahrenheit

Bạn đang nói chuyện điện thoại với một người bạn ở Mỹ vào một ngày đông giá lạnh. "Nhiệt độ ở đây là âm \(40\) độ!", cả hai cùng thốt lên. Thông thường, việc này sẽ cần phải làm rõ ai đang nói đến độ C và ai đang nói đến độ F—nhưng không phải ở nhiệt độ cụ thể này. Tại sao lại như vậy? Đây là nhiệt độ duy nhất mà thang đo độ C và độ F trùng khớp!

.­.­.

Sự nhầm lẫn trong thứ tự sắp xếp tự nhiên

Hầu hết các trình quản lý tệp đồ họa không sắp xếp theo từ điển một cách nghiêm ngặt mà sử dụng “sắp xếp tự nhiên”. Các khối số trong tên được hiểu là các con số - khối số lớn hơn sẽ thắng, ngay cả khi số ngược lại xuất hiện hoàn toàn theo thứ tự bảng chữ cái. Ý tưởng đằng sau việc sắp xếp tự nhiên: Điều mọi người chủ yếu muốn là “9 trước 10”, “Chương 2 trước Chương 10” mà không cần phải thêm các số 0 ở đầu.

.­.­.

Ưu tiên trong Windows Task Scheduler

Bất kỳ ai chạy các công việc trong bộ lập lịch tác vụ của Windows sớm hay muộn cũng sẽ gặp phải những khác biệt không thể giải thích được trong thời gian chạy. Một tập lệnh PHP chạy trong 5 phút trên dòng lệnh đột nhiên mất 20 phút khi chạy qua Windows Task Scheduler. Cùng một người dùng, cùng một quyền, cùng một mã – gấp bốn lần thời gian thực hiện. Chuyện gì đang xảy ra ở đó thế?

.­.­.

Điểm chuẩn ARC-AGI

Sự suy giảm liên tục về giá năng lực tính toán—hai cấp độ mỗi thập kỷ—đã thúc đẩy mạnh mẽ các mô hình học sâu kể từ năm 2010. Các mạng lưới lớn hơn cùng với nhiều dữ liệu hơn dường như đáng tin cậy hơn khi cung cấp điểm số ngày càng cao hơn trên các chuẩn mực chung—và thúc đẩy hy vọng rằng chỉ riêng việc mở rộng quy mô chắc chắn sẽ dẫn đến AGI. Ngay từ năm 2019, François Chollet đã giới thiệu chuẩn mực ARC-AGI . để đo trí thông minh.

.­.­.

Hiển thị địa chỉ email người gửi trong Outlook

Địa chỉ email người gửi vẫn là một chỉ báo tốt để xác định xem email đó có phải là thư rác hay không. Theo mặc định, trong Microsoft Outlook Desktop, việc thêm một cột để hiển thị địa chỉ email thực tế thay vì tên không được trực quan cho lắm. Microsoft vẫn chưa triển khai tính năng này như một tùy chọn đơn giản – tuy nhiên, nó có thể được thêm vào phiên bản Outlook dành cho Windows cổ điển bằng các công cụ tích hợp sẵn.

.­.­.

SSL trong môi trường phát triển cục bộ

Trong thời đại của trình duyệt chỉ sử dụng HTTPS, cookie SameSite và các điều kiện phát triển thực tế, điều quan trọng là phải làm việc cục bộ với chứng chỉ SSL thực. Let's Encrypt đã thực hiện công việc tiên phong ở đây – với sự trợ giúp của certbotCloudflare , việc tạo và gia hạn chứng chỉ đại diện trở nên nhanh chóng và dễ dàng. Tính năng này cho phép bạn truy cập các dự án web được mã hóa trên mọi thiết bị (điện thoại thông minh, VM, ...) trong mạng cục bộ hoặc qua VPN.

.­.­.

Xây dựng Mô hình ngôn ngữ lớn của riêng bạn

"Một cỗ máy có thể có bộ nhớ lớn, nhưng nó không thể suy nghĩ - trừ khi chúng ta dạy nó." – Alan Turing. Các mô hình AI hiện đại như GPT-4 hoặc Llama dựa trên các tập dữ liệu khổng lồ và cấu trúc toán học phức tạp. Nhưng thực sự đằng sau nó là gì? Trong bài viết này, chúng ta sẽ xem xét các thành phần chính cần thiết để xây dựng một mô hình ngôn ngữ từ đầu.

.­.­.

Tự mình lưu trữ OpenStreetMap

OpenStreetMap (OSM) là bản đồ thế giới miễn phí được mọi người trên toàn thế giới cùng nhau tạo ra – miễn phí, mở và độc lập. Trong khi Google Maps, với tư cách là công ty dẫn đầu thị trường, thường là lựa chọn đầu tiên cho bản đồ kỹ thuật số, OSM lại dựa trên một nguyên tắc hoàn toàn khác: một cộng đồng hợp tác thu thập, cải thiện và cung cấp dữ liệu địa lý miễn phí.

.­.­.

Truy cập bằng PHP vào Exchange / Office 365

Đã thông báo từ lâu - giờ đã thành hiện thực : Microsoft đã tắt xác thực bằng mật khẩu cho một số giao thức nhất định trong Exchange Online từ tháng 9 năm 2022 để ủng hộ oAuth2. Các vấn đề GitHub của nhiều thư việntập lệnh sao lưu cho thấy rõ ràng rằng việc chuyển đổi đã khiến nhiều quản trị viên ngạc nhiên. Dưới đây, chúng tôi chỉ ra cách bạn có thể tiếp tục truy cập nội dung hộp thư Exchange của mình với sự trợ giúp của oAuth2 qua PHP qua IMAP.

.­.­.

Gửi email bị trì hoãn

Thời gian không đúng? Email được gửi quá sớm? Việc trì hoãn gửi email có thể hữu ích trong nhiều trường hợp: để bạn có thời gian xem xét hay để quản lý hiệu quả khối lượng công việc của mình - thời gian có thể rất quan trọng. Dưới đây là ba cách bạn có thể trì hoãn việc gửi email và tối ưu hóa hoạt động liên lạc của chính mình.

.­.­.

Điều khiển trình duyệt bằng AI

Tự động hóa trình duyệt đóng một vai trò lớn trong các lĩnh vực như quét web, kiểm tra tự động và tương tác ứng dụng web. Ví dụ, cho đến nay, Puppeteer đã được sử dụng cho mục đích này. Với sự ra đời của AI, các cơ hội mới hiện đang mở ra để giúp quá trình tự động hóa trình duyệt trở nên trực quan hơn và ít cần bảo trì hơn - tạo tiền đề cho Stagehand .

.­.­.

Gỡ lỗi PHP bằng Xdebug

Xdebug là một công cụ gỡ lỗi và phân tích hiệu năng mạnh mẽ dành cho PHP, giúp chúng ta phân tích và tối ưu hóa các ứng dụng PHP. Nó hỗ trợ các tính năng như gỡ lỗi từng bước, đo lường hiệu năng và theo dõi ngăn xếp, giúp đơn giản hóa việc khắc phục sự cố và cung cấp cái nhìn sâu sắc hơn về mã nguồn. Sau đây là hướng dẫn thiết lập ngắn gọn để sử dụng nó trong VS Code.

.­.­.

Về chất lỏng

Hãy tưởng tượng hai chiếc cốc giống hệt nhau - một chiếc chứa đầy cà phê và chiếc kia chứa sữa, cả hai đều có cùng mức độ. Lúc này một thìa cà phê được múc từ cốc cà phê vào cốc sữa và khuấy đều. Sau đó thêm một thìa cà phê hỗn hợp từ cốc sữa vào cốc cà phê. Cốc nào sau đó chứa nhiều chất lạ hơn?

.­.­.

Tin nhắn cam kết Git với ChatGPT

Thông điệp commit trong Git thường bị bỏ qua. Nhiều người chỉ coi chúng như một điều cần thiết nhưng phiền phức để lưu lại các thay đổi. Tuy nhiên, những thông điệp commit có ý nghĩa là yếu tố then chốt cho sự thành công của dự án: chúng đảm bảo khả năng theo dõi thay đổi tốt, sự hợp tác nhóm hiệu quả và việc sửa lỗi nhanh hơn. Đó là lý do đủ để sử dụng trí tuệ nhân tạo (AI) để tự động chuẩn bị các thông điệp commit.

.­.­.

Tháng Hai hình chữ nhật

Tháng Hai đôi khi mang một hình dạng khác thường và hấp dẫn trên lịch. Ví dụ, vào tháng Hai năm 2021, người ta có thể trải nghiệm một "tháng Hai hình chữ nhật hoàn hảo". Hiệu ứng hiếm gặp này xảy ra khi tháng Hai có đúng \(28\) ngày và ngày 1 tháng Hai rơi vào thứ Hai. Nhưng điều này thực sự xảy ra bao nhiêu lần, và chúng ta phải chờ bao lâu nữa mới thấy hiện tượng này tiếp theo?

.­.­.

Căn giữa theo chiều dọc trong CSS

CSS vẫn còn gây nhầm lẫn cho hầu hết chúng ta: nó có hàng trăm thuộc tính được đặt tên kém, mỗi thuộc tính có thể ảnh hưởng đến kết quả theo những cách không trực quan. Việc định vị theo chiều dọc của các phần tử trong phát triển web rất phức tạp và thường gây đau đầu trong quá khứ. Nhưng may mắn thay những ngày đó đã qua.

.­.­.

chiều cao: 0 đến chiều cao: tự động tạo hiệu ứng bằng CSS

Chuyển tiếp CSS là một cách tuyệt vời để tạo ra sự tương tác. Đủ rồi, transition về trạng thái ban đầu của một phần tử và trình duyệt sẽ tạo hiệu ứng chuyển đổi giữa hai trạng thái. Chuyển đổi cho kích thước phần tử nội tại như auto Tuy nhiên, đây là một vấn đề đối với các nhà phát triển web trong nhiều thập kỷ và lựa chọn duy nhất là tính toán động chiều cao bằng JavaScript.

.­.­.

Không có số nguyên giữa 0 và 1

Không có \(n \in \mathbb{Z}^+\) sao cho \(0 < n < 1\) .

.­.­.

Nghịch lý thang máy

Năm 1950, nhà vật lý George Gamow và Marvin Stern nhận thấy một hiện tượng thú vị: Gamow, người có văn phòng ở tầng một của một tòa nhà sáu tầng, nhận thấy rằng năm trong sáu lần thang máy tiếp theo đi xuống, mặc dù ông ấy muốn để đi lên. Stern, người làm việc ở tầng năm, lại quan sát điều ngược lại.

.­.­.

Quine

Chương trình Quine hay Quine là chương trình xuất ra mã nguồn của chính nó khi được thực thi. Ví dụ, Quine không được "bước ra ngoài chính nó" bằng cách in ra nội dung của tệp chứa nó hoặc sử dụng khả năng xem xét nội tâm để in ra bản trình bày của chính nó. Thay vào đó, nó phải tính toán mã nguồn của chính mình.

.­.­.

Xoay tệp bằng tập lệnh bash

Các công cụ mạnh mẽ như logrotate giúp công việc xoay tệp nhật ký hoặc sao lưu dễ dàng hơn nhiều. Vì vậy, các tập tin sẽ được xoay sau một khoảng thời gian nhất định hoặc khi chúng đạt đến một kích thước nhất định. Nếu bạn không có sẵn công cụ này trên máy chủ từ xa và chỉ có thể thực thi các lệnh SSH từ xa, bạn có thể sử dụng một tập lệnh bash nhỏ để xóa các tệp cũ và chỉ thực hiện một yêu cầu.

.­.­.

Định luật Benford

Trong thế giới của những con số, bạn luôn bắt gặp những mô hình đáng ngạc nhiên có thể vừa đáng kinh ngạc vừa soi sáng. Một trong những điều gây tò mò như vậy là Định luật Benford, còn được gọi là Định luật chữ số đầu tiên. Hiện tượng toán học này mô tả sự phân bố tần số của các chữ số đầu tiên trong nhiều tập dữ liệu thực và mang lại những hiểu biết thú vị về bản chất của các con số khi chúng xuất hiện trong môi trường của chúng ta.

.­.­.

Tính toán xác suất nghịch lý

Tôi có hai con, một con trai sinh vào thứ Năm. Xác suất tôi có một con gái là bao nhiêu? Hãy ký hiệu các ngày trong tuần bằng các số \(1, 2, … , 7\) trong đó \(1\ =\) Thứ Hai, \(2 =\) Thứ Ba, v.v. Bây giờ ta có thể định nghĩa sự kiện "Vào ngày \(n\) có một bé trai được sinh ra" là \(B_n\) và tương tự đối với \(G_n\) .

.­.­.

Cuộc tranh cãi về ngày tận thế

Giả sử rằng số \(Y\) của tất cả những người đã từng và sẽ được sinh ra là có hạn, hãy để \(x\) là vị trí tuyệt đối của bạn ngay từ đầu danh sách. Sau đó \(0 < \frac{x}{Y} \leq 1\) . Bây giờ chúng tôi có thể nói với xác suất \(95\%\) rằng bạn nằm trong số \(95\%\) cuối cùng trong số tất cả những người từng được sinh ra, vì vậy \(0,05 < \frac{x}{Y} \leq 1\) và do đó \(Y < \frac{x}{0,05} = \frac{100 \cdot x}{5} = 20 \cdot x\) .

.­.­.

Nghịch lý người uống rượu

Câu sau đây được mệnh danh là “nghịch lý của người uống rượu”: “Có người trong quán bar, nên nếu người đó uống rượu thì mọi người trong quán bar cũng uống”. Không quan trọng việc người này khuyến khích người khác uống rượu hay có tồn tại một cửa sau khác hay không, như chúng ta sẽ thấy sau đây. Đó là một ví dụ hay từ logic vị ngữ toán học.

.­.­.

Đoán số

Một cậu bé nghĩ về một số \(1\) , \(2\) hoặc \(3\) và sau đó một cô gái chỉ được phép hỏi một câu hỏi về số đó. Cậu bé chỉ có thể trả lời “ ”, “ không ” hoặc “ tôi không biết”. Bằng cách đặt câu hỏi một cách khéo léo, cô gái đã gọi đúng con số mà chàng trai đang nghĩ đến sau khi chàng trai trả lời cô. Câu hỏi của bạn là gì?

.­.­.

Đối tượng không có nguồn gốc

Hãy tưởng tượng một ngày nọ bạn nhận được một bưu kiện bí ẩn, không có địa chỉ người gửi. Tò mò, bạn mở ra và thấy một chiếc nhẫn, rồi bạn đưa nó cho con gái mình. Nhiều thập kỷ sau, chính cô ấy là người có khả năng gửi đồ vật về quá khứ bằng một hố đen vũ trụ. Cô ấy làm điều đó với chiếc nhẫn mà cô ấy từng nhận được từ bạn, được gói trong một bưu kiện gửi đến bạn. Câu hỏi đặt ra là: Chiếc nhẫn đến từ đâu?

.­.­.

CI với Tác vụ GitHub

Là một giải pháp thay thế cho Travis CI được đánh giá cao, GitHub Actions đã có sẵn được một thời gian. Là một công cụ tích hợp liên tục, nó được tích hợp rất tốt vào nền tảng mã GitHub và hiện đang chạy rất ổn định. GitHub Actions dựa trên các tệp cấu hình YAML được đặt trong kho lưu trữ nơi quy trình công việc sẽ được thực thi.

.­.­.

Nghịch lý Stein

Năm 1961 James và Stein đã xuất bản bài viết Ước tính với Tổn thất bậc hai . Lấy dữ liệu được phân phối bình thường với giá trị trung bình không xác định \(\mu\) và phương sai \(1\) . Nếu bây giờ bạn chọn một giá trị ngẫu nhiên \(x\) từ dữ liệu này và phải ước tính giá trị trung bình \(\mu\) trên cơ sở này, thì \(x\) theo trực giác là một ước tính hợp lý cho \(\mu\) (vì có phân phối chuẩn nên \(x\) được chọn ngẫu nhiên có thể ở gần \(\mu\) ).

.­.­.

UUID trong cơ sở dữ liệu

UUID (Các công cụ liên kết Id duy nhất phổ biến) là các giá trị 128 bit được sử dụng trong cơ sở dữ liệu, cùng với những thứ khác, để xác định duy nhất các mục trong bảng. Chúng được biểu diễn dưới dạng chuỗi thập lục phân được chia thành năm nhóm được phân tách bằng dấu gạch nối (ví dụ: 09fe49b3-4d2b-471c-ac04-36c9e706b85f). Có nhiều Thảo luận về ưu điểm và nhược điểm của UUID trong cơ sở dữ liệu - chúng không thể thiếu trong hệ thống phân tán.

.­.­.

Xóa lịch sử Git phần 2

Dữ liệu nhạy cảm hoặc tiêu tốn quá nhiều dung lượng lưu trữ: Có nhiều lý do chính đáng để muốn thay đổi lịch sử Git. Trong bài đăng trên blog này, tôi đã giải thích cách xóa tệp khỏi lịch sử Git bằng BFG . Một điểm yếu của BFG là thiếu hỗ trợ đường dẫn trực tiếp , do đó bạn không thể xóa cụ thể các tệp hoặc thư mục trong thư mục con khỏi lịch sử. Cùng với đó, đã đến lúc xem xét các giải pháp thay thế.

.­.­.

Giới hạn bộ nhớ trong WordPress

Tóm lại: Thiết lập giá trị thủ công hoặc sử dụng giá trị mặc định của WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT không có hiệu lực nếu WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT nhỏ hơn hoặc bằng giới hạn bộ nhớ của PHP (sau đây gọi là memory_limit được gọi là) là. Chúng được sử dụng để đặt các giá trị quá thấp của memory_limit động đến mức tối thiểu được khuyến nghị.

.­.­.

Mẹo nhanh: Sửa đổi iframe

Nếu bạn nhúng khung nội tuyến của bên thứ ba (như tiện ích con), bạn không thể truy cập nội dung của nó bằng CSS hoặc JavaScript (do cái gọi là chính sách nguồn gốc ). Tuy nhiên, có một thủ tục rất đơn giản để sửa đổi bất kỳ mã nào (cũng trong các tệp khác được tải lại trong iframe). Để làm điều này, bạn định tuyến URL thông qua proxy PHP của riêng bạn và sửa đổi nội dung theo ý muốn.

.­.­.

Tiền trong ứng dụng ANTON

ANTON là một trong những ứng dụng học tập phổ biến nhất dành cho học sinh từ lớp 1-10. Lớp. Thoạt nhìn, khía cạnh trò chơi hóa của việc có được tiền xu ("tiền xu") có vẻ xa lạ với người lớn - nhưng nó nhân lên đáng kể động lực, không chỉ của các con tôi. Nó thậm chí còn tiết kiệm một "đệm" tiền xu nhỏ mà bạn không chạm vào.

.­.­.

Về tính mạnh mẽ của IBAN

Mã IBAN của Đức bao gồm mã quốc gia (DE), một chữ số kiểm tra gồm hai chữ số (theo tiêu chuẩn ISO 7064 ), mã ngân hàng (8 chữ số) và số tài khoản (bao gồm số tài khoản phụ, 10 chữ số, các chữ số bị thiếu được thêm số 0 ở đầu), tổng cộng là 22 ký tự. Để tính toán chữ số kiểm tra, trước tiên người ta tạo một chuỗi từ mã BBAN (mã ngân hàng và số tài khoản), mã quốc gia số \(1314\) của Đức và chữ số kiểm tra \(00\) .

.­.­.

Toán học trong trò chơi Dobble

Trong buổi tối chơi trò chơi gia đình gần đây nhất, bọn trẻ hào hứng mang trò chơi Dobble (phiên bản Harry Potter) ra chơi. Sau khi thua năm ván (mà lá bài của tôi không hề trùng khớp với lá bài đối thủ), tôi ngạc nhiên khi biết rằng người chơi nào cũng luôn tìm được lá bài trùng khớp trong mỗi ván. Tuy nhiên, sự ngạc nhiên của tôi chỉ được chứng minh bằng những ván thua tiếp theo – bọn trẻ đơn giản là nhanh hơn.

.­.­.

Thời gian khối bitcoin

Bạn biết đấy: Thời gian dự kiến ​​giữa hai khối Bitcoin trung bình là \(10\) phút. Bây giờ bạn đang thực hiện một giao dịch Bitcoin quan trọng và háo hức chờ xem liệu nó có xuất hiện trong khối tiếp theo hay không:

e50bfacc95975a4e7545d83d8954645f

.­.­.

Toán Corona

Trong báo cáo hàng tuần của RKI số 11.11.2021, nó được liệt kê ở trang 22 rằng \(36\%\) các bệnh nhân corona trên 60 tuổi trong phòng chăm sóc đặc biệt đã được tiêm chủng đầy đủ. Ở nhóm tuổi này, \(87\%\) tiêm chủng hoàn toàn tại thời điểm này (xem trang 18).

.­.­.

Phân số thập phân

Số thập phân hữu hạn được gọi là phân số thập phân, bởi vì chúng là một cách biểu diễn khác cho các phân số có lũy thừa là mười ở mẫu số. Cũng vậy:

$$\frac{z}{n} = \frac{q_1}{1} + \frac{q_2}{10} + \dots + \frac{q_k}{10^k}$$

với \(k \in \mathbb{N}\)\(q_k\) trí \(k-1\) -th ở bên phải sau dấu phẩy.

.­.­.

Mẹo nhanh: Tự động thay đổi phiên bản nút

Nên sử dụng nvm để cài đặt và thay đổi phiên bản nút nhanh chóng. Nếu bạn muốn chỉ định rõ ràng phiên bản nút được yêu cầu trong một dự án, bạn đặt một tệp có tên .nvmrc với số phiên bản chính xác (ví dụ: "12.10.0") trong cùng một thư mục chứa package.json . Nếu bây giờ bạn thay đổi thành thư mục, phần mở rộng sau của tệp ~ / .bash_profile cho bash thực hiện lệnh nvm use , lệnh này sẽ tự động đặt phiên bản này:

fe497e1c7f9f1547263eb3bffe15f9f6

.­.­.

Sử dụng các truy vấn vùng chứa ngay hôm nay

Kể từ khi thiết kế web đáp ứng (responsive web design) ra đời, các nhà phát triển đã yêu cầu khả năng tạo kiểu cho các phần tử DOM dựa trên kích thước thực tế của chúng thay vì kích thước khung nhìn của trình duyệt (sử dụng media queries ). Trên thực tế, container queries (ban đầu là element queries) có lẽ là tính năng CSS được yêu cầu nhiều nhất mà các trình duyệt vẫn còn thiếu .

.­.­.

Xóa lịch sử Git

Dữ liệu nhạy cảm như mật khẩu nên được lưu trữ trong các tệp .env và, nếu có thể, không nên lưu trữ trong các kho lưu trữ Git. Tuy nhiên, có lẽ mỗi chúng ta ít nhất một lần đã mắc phải lỗi này: nhanh chóng đăng tải một đoạn mã API JavaScript của Google Maps lên GitHub Gists (ở chế độ "công khai") và vô tình không che giấu khóa API Maps riêng tư của mình.

.­.­.

Cắt SVG khỏi hình ảnh bằng đường dẫn clip

Nếu bạn muốn cắt một hình ảnh sử dụng SVG, bạn nên sử dụng thuộc tính CSS `clip-path` . Đoạn mã sau đây giúp loại bỏ một số trở ngại: SVG có thể được lưu bằng Illustrator, bạn có thể chỉ định URL (tương đối hoặc tuyệt đối) của SVG (hiện tại Chrome chỉ hỗ trợ SVG nội tuyến), và hình ảnh được cắt cũng hoàn toàn tương thích với mọi kích thước màn hình.

.­.­.

Mẹo nhanh: WP_Query & Trường nhiều dòng

Sử dụng thuộc tính `meta_query` trong lớp mạnh mẽ `WP_Query` của WordPress, bạn có thể lọc các bài viết có giá trị cụ thể trong trường meta của chúng. Nếu bạn đã tạo một trường meta nhiều dòng (ví dụ: sử dụng Advanced Custom Fields ) và chỉ muốn tìm các bài viết chứa một giá trị cụ thể trong trường được phân tách bằng dòng này, thì nên sử dụng biểu thức chính quy (REGEX) của MySQL.

.­.­.

Tích hợp các hoạt ảnh Adobe Animate nguyên bản

Trong bài viết trước, tôi đã mô tả cách bạn có thể dễ dàng tích hợp hoạt ảnh từ Adobe Animate vào trang web bằng cách xuất APNG. Ngoài ra còn có cách gốc thông qua Xuất khẩu Canvas HTML5 , nhưng bất kỳ ai đã từng làm việc với nó sẽ nhận thấy rằng luôn có vấn đề (hỗ trợ phản hồi không đủ, tích hợp cồng kềnh vào các trang web hiện có, không có tốc độ khung hình khác nhau cho mỗi hoạt ảnh, v.v.). Thư viện adobe-animate-embed có thể trợ giúp ở đây.

.­.­.

Google Maps không có khóa API

Thông thường, khi tích hợp Google Maps, bạn làm việc với API JavaScript của Maps , API này yêu cầu khóa API và có thể gây ra chi phí không nên đánh giá thấp với số lượng truy cập cao hơn. Có những lựa chọn thay thế tuyệt vời như mapbox hoặc OpenStreetMap , nhưng chúng chưa đạt được sự đa dạng của các tính năng do Google cung cấp. Bản thân Google cũng cung cấp một cách không cần khóa API thông qua chức năng chia sẻ mà chúng tôi có thể sử dụng cho các mục đích của mình.

.­.­.

Adobe Animate APNG Export

Khả năng hỗ trợ tệp PNG động của trình duyệt hiện nay đã rất tiên tiến, cho phép dễ dàng xuất các ảnh động được tạo bằng Animate CC dưới dạng APNG và sau đó nhúng vào trang web bằng thẻ `<img>` đơn giản. Điều này cung cấp một giải pháp thay thế đơn giản và chất lượng cao cho phương pháp xuất bản trong Animate CC, vốn tạo ra mã JavaScript. Các bước cần thiết được mô tả bên dưới.

.­.­.

Mở rộng tìm kiếm WordPress

Nếu bạn muốn mở rộng chức năng tìm kiếm mặc định của WordPress để bao gồm các trường meta, ví dụ, bạn nên xem xét các bộ lọc được kích hoạt. Để đảm bảo phân trang vẫn hoạt động và các cải tiến tìm kiếm trong tương lai không bị ảnh hưởng, nên sử dụng hook `posts_search` . Đoạn mã sau, sử dụng các hàm REGEXPExtractValue , mở rộng tìm kiếm này để bao gồm các bài viết chứa một trong các cụm từ tìm kiếm đã nhập trong tất cả các trường meta.

.­.­.

Tính toán chỉ số khả năng hiển thị SISTRIX

Cùng với Xovi, công cụ SISTRIX là chương trình phân tích được sử dụng rộng rãi nhất ở Đức trong lĩnh vực SEO. Chỉ số khả năng hiển thị đã tự thiết lập như một tiêu chuẩn cho khả năng hiển thị của một trang trong tìm kiếm của Google. Ví dụ , các tham số được bao gồm trong tính toán của nó được giải thích đâyở đâyở đâyở đây , nhưng một công thức tính toán chính xác không được công bố chính thức. Sau đây là kết quả nghiên cứu cá nhân trong sáu tháng của tôi, không được khẳng định là hoàn chỉnh hay chính xác.

.­.­.

Kiệt tác của Godel

Khi Kurt Gödel xuất bản Định lý không đầy đủ nổi tiếng của mình vào năm 1931, nó đã làm lung lay nền tảng của logic toán học: ông bác bỏ rằng tất cả các tiên đề có thể được thiết lập như một cơ sở có thể chắc chắn là không đầy đủ để chứng minh tất cả các phát biểu về số - và phá hủy điều đó Giấc mơ của Hilbert để chứng minh tính nhất quán của lý thuyết toán học.

.­.­.

Sử dụng WhatsApp qua API

Bất chấp mọi lo ngại về bảo vệ dữ liệu, WhatsApp vẫn là ứng dụng nhắn tin yêu thích của người Đức. Ngoài ứng dụng WhatsApp Business đặc biệt, Facebook cũng đã tạo ra một giao diện chính thức, API WhatsApp Business, để mang lại sự thú vị hơn cho các công ty. Nếu bạn muốn gửi tin nhắn WhatsApp theo chương trình từ ứng dụng web của mình, cũng có các tùy chọn khác.

.­.­.

Làm mờ trang sau lớp phủ bằng CSS

Ví dụ: nếu bạn sử dụng các phần tử như lớp phủ (là quy tắc trong thời kỳ hoạt động GDPR) và muốn làm mềm khu vực đằng sau lớp phủ, bạn thường gặp phải vấn đề về bối cảnh xếp chồng . Ví dụ: nếu bạn có các phần tử được định vị hoàn toàn hoặc ở một vị trí cố định, chúng đột nhiên được hiển thị khác với không có bộ lọc được áp dụng. Nhưng có một biện pháp khắc phục.

.­.­.

Mẹo nhanh: Kiểm tra phân tách với Apache

Bạn không cần một công cụ mạnh mẽ như Google Optimize cho các bài kiểm tra A/B URL đơn giản; bạn cũng có thể thực hiện kiểm tra A/B với Apache bằng cách sử dụng tệp .htaccess. Đoạn mã sau phân bổ khách truy cập từ hai trang https://vielhuber.de/test1.php (Biến thể 1) và https://vielhuber.de/test2.php (Biến thể 2) một cách đồng đều giữa hai phiên bản. Việc ngẫu nhiên hóa dựa trên thời gian máy chủ hiện tại.

.­.­.

Thông qua ký hiệu của các hàm phân nhánh

Dấu ngoặc nhọn được sử dụng trong ký hiệu định nghĩa hàm với sự phân biệt chữ hoa và chữ thường. Chúng tôi theo đuổi câu hỏi đơn giản là liệu biểu diễn này cũng có thể bị loại bỏ và hàm có thể được rút gọn thành một ký hiệu không có nó. Ví dụ, hàm

$$f: \mathbb{R} \to \mathbb{R}, f(x) = \left\{\begin{matrix} 42, & \text{falls } x = 0 \\ x, & \text{sonst} \end{matrix}\right.$$

biểu diễn nó dưới dạng một dòng bằng cách sử dụng bốn phép tính số học cơ bản?

.­.­.

Chuỗi ngày trong Google Trang tính

Khi hiển thị dữ liệu trong Google Trang tính, người ta gặp phải vấn đề là trục \(x\) cho các giá trị văn bản (chẳng hạn như các tuần theo lịch) không thể tự động điền vào các khoảng trống còn thiếu. Để giải quyết vấn đề, bạn tạo một chuỗi ngày liên tục, tự đếm các ô xảy ra và sau đó trực quan hóa tổng tích lũy.

.­.­.

Mẹo nhanh: PHP clerstatcache

Tìm sai lầm:

72aaa2dbd201d49fc2ee429ebf68f15b

.­.­.

Lấy cắp dữ liệu API dịch của Google

Là một phần của Google Cloud, Google cung cấp Google Dịch API với cấu trúc chi phí dựa trên mức sử dụng. Ngoài ra còn có một API không có tài liệu có thể được sử dụng mà không cần khóa , nhưng từ chối hoạt động chỉ sau một vài yêu cầu. Khi sử dụng chức năng dịch trang web của Google Chrome, có thể nhận thấy rằng các trang có thể được dịch với chất lượng rất tốt mà không có bất kỳ hạn chế nào đáng chú ý.

.­.­.

Mẹo nhanh: Tự động gắn thẻ Git

Khi liên kết GitHub với Composer , việc gán số phiên bản thông qua `git tag` là bắt buộc. Lệnh dòng lệnh sau xác định thẻ hiện tại và tăng nó lên một số phiên bản (theo SemVer ). Ví dụ, phiên bản 1.1.0 theo sau 1.0.9. Nếu không gán thẻ nào, phiên bản sẽ tự động được gắn thẻ là 1.0.0. Các công cụ như flimsy hoặc ` git hooks` giúp rút ngắn quá trình gắn thẻ dài dòng này.

8cd852c96ec1e60e8a5ac1f3614b2397

.­.­.

Chỉnh sửa trình kích hoạt MySQL

Thật không may, MySQL không cung cấp hàm ALTER TRIGGER. Để chỉnh sửa một trigger hiện có, trước tiên bạn phải xóa nó và sau đó tạo lại. Câu lệnh CREATE TRIGGER có thể được truy cập gián tiếp thông qua information_schema . Điều này cho phép chúng ta sửa đổi trigger một cách gián tiếp. Để làm điều này, hãy thực hiện các thay đổi của bạn trong kết quả của lệnh SELECT sau (sau khi thay đổi tên cơ sở dữ liệu và tên trigger) và thực thi truy vấn.

.­.­.

Kích hoạt sự kiện thay đổi trong VanillaJS

VanillaJS đã ngang hàng với jQuery kỳ cựu trong hầu hết các lĩnh vực kể từ ES6 và hiện tại đã vượt trội hơn rất nhiều. Vì vậy, việc di chuyển dần mã kế thừa ra khỏi jQuery sẽ có ích. Tuy nhiên, bạn phải cẩn thận khi kích hoạt các sự kiện thay đổi thủ công. Ví dụ: document.addEventListener không kích hoạt trên jQuery.change () . Tổng quan sau đây tóm tắt các tính năng đặc biệt.

.­.­.

Kiểm soát cookie bằng PHP và JS

Việc cài đặt cookie bằng tập lệnh của riêng bạn hoặc của bên thứ ba có thể được kiểm soát tốt bằng cả PHP và JavaScript. Mặc dù đây không phải là giải pháp đủ để triển khai các giải pháp cookie sau phán quyết của tòa án chống lại Planet49 (ở đây, điều quan trọng là các công cụ theo dõi như Google Analytics không theo dõi ngay từ đầu và do đó không đặt cookie), nói chung, việc đưa cookie vào danh sách trắng/đen là hợp lý.

.­.­.

Hủy kích hoạt thiết bị thông qua tập lệnh trong Windows

Để tiết kiệm điện hoặc giảm chứng hoang tưởng giám sát của bản thân, bạn nên ngắt kết nối hoàn toàn các thiết bị không sử dụng trên máy tính của mình. Các thiết bị như hộp âm thanh hoặc webcam có thể được kích hoạt / hủy kích hoạt theo cách cổ điển bằng trình quản lý thiết bị. Toàn bộ điều này cũng hoạt động thông qua kịch bản. Cách tiêu chuẩn để làm điều này từng là devcon . Windows 10 hiện cung cấp một cách thuận tiện hơn để thực hiện việc này thông qua PowerShell .

.­.­.

Làm mờ nền Skype

Skype có một chức năng hay nhưng hơi bị ẩn: Trong quá trình truyền video, bạn có thể dễ dàng làm mờ nền tự động bằng cách nhấp vào nút video và sử dụng chức năng " Blur my Background ". Với sự trợ giúp của trí tuệ nhân tạo, tính năng này hoạt động với mọi máy ảnh, ngay cả khi không có thông tin chuyên sâu. Khi đó, toàn bộ sự việc sẽ trở nên chuyên nghiệp hơn và ẩn giấu những điều riêng tư ở chế độ nền hoặc những điều không quan trọng đối với cuộc trò chuyện.

.­.­.

Tối ưu hóa khởi động OPcache PHP

Ví dụ: đối với các trang web dựa trên WordPress , Joomla hoặc Laravel và không có nội dung dành riêng cho người dùng, bạn nên giữ tất cả các trang trong bộ đệm HTML tĩnh và chỉ tạo lại bộ đệm theo cách thủ công (hoặc tự động) nếu có thay đổi trong phần phụ trợ. Tuy nhiên, nếu trang chứa nội dung động phụ thuộc vào phiên và cookie hoặc ngôn ngữ và vị trí thì việc sử dụng OPcache là phù hợp.

.­.­.

Xuất SVG từ Illustrator

SVG đóng một vai trò trung tâm trong web ngày nay. Chúng không chỉ thay thế các phông chữ biểu tượng mà còn cung cấp khả năng thao tác thông qua CSS hoặc JavaScript. Nếu bạn muốn lưu đồ họa vector cho web từ Adobe Illustrator dưới dạng SVG, bạn phải thực hiện một số cài đặt để tránh cạm bẫy và giảm thời gian tải, điều này tôi sẽ trình bày trong bài viết sau.

.­.­.

Project Euler: Đường dẫn mạng lưới

Dự án Euler là một loạt các bài toán lập trình thú vị, thường có nền tảng toán học. Các bài toán thường được thiết kế để yêu cầu phát triển các thuật toán phức tạp nhằm đạt được mục tiêu trong một khoảng thời gian hợp lý. Hôm nay chúng ta sẽ giải Bài toán 15: Đường đi trên lưới , bài toán này có thể được giải bằng các phương pháp tổ hợp đơn giản.

.­.­.

Cập nhật WordPress tự động

Từ phiên bản 3.7 trở đi, WordPress đã tích hợp sẵn tính năng cập nhật nền và tự động kích hoạt tính năng này cho các bản phát hành nhỏ. Bộ lọc cho phép bạn kiểm soát chính xác hơn những gì được cập nhật tự động. Việc cài đặt tự động hoàn toàn tất cả các bản cập nhật nhỏ, lớn, plugin, theme và bản dịch hiện không được hỗ trợ, nhưng có thể dễ dàng thực hiện thông qua các phương pháp khác.

.­.­.

Google Trang tính: Mở rộng Công thức

Để mở rộng công thức cho toàn bộ cột trong Google Trang tính, chúng tôi khuyên bạn nên sử dụng hàm ARRAYFORMULA hữu ích. Thật không may, điều này không hoạt động kết hợp với một số chức năng quan trọng khác như QUERY hoặc INDIRECT , đó là lý do tại sao bạn phải tùy chỉnh hoàn toàn logic bằng cách sử dụng Google Apps Script hoặc cách khác là sao chép công thức theo cách thủ công xuống dòng cuối cùng.

.­.­.

Nghịch lý Simpson

Nghịch lý Simpson là một trong những hiện tượng dễ hiểu và đồng thời đáng kinh ngạc trong thống kê. Nó xảy ra bất cứ khi nào các nhóm dữ liệu hiển thị một xu hướng cụ thể, nhưng xu hướng đó bị đảo ngược khi các nhóm được kết hợp với nhau. Với sự trợ giúp của một ví dụ đơn giản, nghịch lý có thể được hiểu ngay lập tức.

.­.­.

Mẹo nhanh: Trình quản lý thẻ của Google

Trình quản lý thẻ của Google đã tự thiết lập là tiêu chuẩn thực tế để tích hợp các tập lệnh theo dõi. Một mặt, điều này phân tách rõ ràng trách nhiệm (tiếp thị trực tuyến so với lập trình) và mặt khác, bạn có thể nhanh chóng thiết lập và sửa đổi theo dõi thông qua một kênh triển khai bổ sung. Đây là hai mẹo nhỏ để thiết lập trình kích hoạt.

.­.­.

Mẹo nhanh: Điểm phát sóng WLAN FRITZ! Box

Từ FRITZ! OS 07.10 trở đi, nếu internet bị lỗi, FRITZ! Box có thể tạm thời sử dụng điểm phát sóng không dây của điện thoại di động làm phương tiện dự phòng. Chức năng này bị ẩn trong Internet> Dữ liệu truy cập> Nhà cung cấp Internet> Truy cập hiện có qua WLAN . Sau đó, FRITZ! Box hoạt động như một bộ định tuyến và cung cấp một mạng với dải địa chỉ riêng. Khi Internet khả dụng trở lại, bạn chỉ cần đặt lại cài đặt. Tôi cũng phải kiểm tra các tùy chọn WLAN> Mạng vô tuyến> Băng tần 2,4 GHz đang hoạt độngInternet> Dữ liệu truy cập > IPv6> Hỗ trợ IPv6 đang hoạt động .

.­.­.

Hoa của sự sống

Hoa Sự Sống là một họa tiết hình học nổi tiếng, có hình dạng giống bông hoa, đã xuất hiện trong các đền thờ, bản thảo và gần đây hơn là trong văn hóa đại chúng hàng nghìn năm nay. Họa tiết này cũng đóng vai trò trong thuật huyền bí. Ở đây, chúng ta sẽ bỏ qua tất cả những điều đó và tập trung vào cấu trúc đơn giản của hình dạng hình học này, bao gồm một số vòng tròn chồng lên nhau, được đặt cách đều nhau.

.­.­.

Email bị trì hoãn trong Outlook

Email phương tiện liên lạc không đồng bộ - bất chấp mọi lời tiên tri về sự diệt vong xung quanh SlackDiscord - là phương tiện liên lạc thống trị trong kinh doanh trên toàn thế giới. Ngoài Inbox Zero của Merlin Mann, còn có rất nhiều chiến lược khác để xử lý tình trạng tràn ngập email hàng ngày, bao gồm cả cái gọi là trì hoãn email, tức là gửi email bị trì hoãn.

.­.­.

Một vòng xoắn của những con số

Trong vài ngày qua, tôi đã nghiên cứu câu hỏi sau trên StackExchange về một vòng xoắn các số nguyên. Chúng tôi đang tìm kiếm một công thức đóng cho tọa độ của phần tử \(n\) -th trong đường xoắn ốc số nguyên sau đây, kéo dài từ điểm gốc ra bên ngoài và xa hơn và xa hơn đến vô tận:

..  9 10 11 12
23  8  1  2 13
22  7  0  3 14
21  6  5  4 15
20 19 18 17 16
.­.­.

Quyền đọc trong Google Trang tính

Khi làm việc với Google Sheets, bạn có thể thiết lập các quy tắc chi tiết, dựa trên người dùng, để chỉnh sửa trang tính, cột và hàng trong bảng tính. Tuy nhiên, tiếc là không có cách nào để hạn chế quyền truy cập chỉ đọc. Điều này sẽ rất hữu ích trong nhiều trường hợp, ví dụ: để chỉ hiển thị cho khách hàng những yêu cầu hỗ trợ liên quan đến họ, hoặc chỉ hiển thị cho nhân viên những dự án họ đang thực hiện.

.­.­.

Sợi plug'n'play

npm là trình quản lý gói mặc định cho Node.js. Facebook từ lâu đã phát triển một giải pháp quản lý gói thay thế có tên Yarn . Yarn dường như đang dần biến mất khỏi GitHub readmes như một giải pháp mặc định và số liệu thống kê trên trang web chính thức cho thấy rằng chỉ một phần cài đặt gói được thực hiện với Yarn. Tuy nhiên, nó đáng để nhìn ra bên ngoài hộp.

.­.­.

Chuyển đổi PDF sang LaTeX


Hệ thống sắp chữ \(\TeX\) được phát triển vào năm 1977 bởi Donald E. Knuth huyền thoại. Gói phần mềm \(\LaTeX\) vẫn là một phần của tiêu chuẩn khi tạo các bài báo khoa học. Với hai công cụ sau, các tệp PDF và ghi chú viết tay đã được tạo có thể được chuyển đổi hoàn toàn tự động sang TeX. Kết quả này đầy hứa hẹn.

.­.­.

Đối số mô phỏng

Lập luận mô phỏng của Nick Bostrom rất đơn giản và rõ ràng. Nó không cố gắng chứng minh rằng chúng ta đang sống trong một mô phỏng, mà thay vào đó nó hình thành một cách trang nhã ba khả năng, một trong số đó phải là sự thật. Elon Musk cũng ủng hộ một luận điểm tương tự, khiến ý tưởng này được công chúng biết đến rộng rãi. Bài báo chính thức đã hơn 14 năm và chỉ ngắn chừng ấy trang. Câu lệnh trung tâm rất dễ hiểu và cô đọng.

.­.­.

Lỗi nghiêm trọng khi sử dụng WPML + ACF

Các plugin WPML mạnh mẽ cho đa ngôn ngữ và Trường tùy chỉnh nâng cao cho các trường của riêng bạn là thiết bị tiêu chuẩn trong nhiều cài đặt. Thật khó chịu khi sự cố và mất dữ liệu kết hợp với nhau. Các báo cáo lỗi về chủ đề này đã tồn tại một vài năm và chưa được trả lời ( đâyđâyđâyđâyđây ). Tôi vừa xem xét kỹ hơn vấn đề.

.­.­.

Tải tệp lên trong Trình duyệt Facebook trong ứng dụng

Trên một số điện thoại Android, cả trình duyệt trong ứng dụng Facebook và Instagram (kể từ hôm nay) đều hoạt động không chính xác khi thuộc tính chấp nhận được chỉ định cho trường tải lên trong trang đích được quảng cáo hoặc được liên kết. Do đó, nút này không có chức năng. Nếu bạn mở trang này trong một trình duyệt bên ngoài, bình thường bên ngoài ứng dụng Facebook thì mọi thứ đều ổn. Điều này thật khó chịu (đặc biệt vì nó đã được báo cáo từ lâu), nhưng nó có thể được giải quyết bằng một cách giải quyết khác.

.­.­.

Chrome Devtools: Di chuyển các phần tử DOM

Công cụ dành cho nhà phát triển của Google Chrome là một trong những công cụ mạnh mẽ nhất trên thị trường trình duyệt. Các tính năng mới được bổ sung hàng tháng, và Google thường giới thiệu chúng một cách ngắn gọn trên YouTube . Nhưng thường thì chính những điều nhỏ nhặt trong cuộc sống lại mang đến niềm vui. Nếu bạn muốn xóa các phần tử DOM trong Google Chrome, bạn có thể sử dụng phím Delete. Nhưng chỉ đến hôm nay tôi mới nhận ra rằng bạn cũng có thể di chuyển các phần tử DOM một cách đơn giản bằng cách kéo và thả.:

.­.­.

Mẹo nhanh: git status --r

Một quy tắc vàng trong vũ trụ git là: "Hãy cam kết sớm và thường xuyên". Nếu đêm dài hơn một chút hoặc nếu bạn chỉ muốn có cái nhìn tổng quan về tình hình hiện tại trên máy tính của riêng mình, thì lệnh sẽ đưa bạn

d8a38f92d0baa14f9d4568826c13ad46

"trạng thái git" cho tất cả các kho lưu trữ nằm trong thư mục hiện tại hoặc trong bất kỳ thư mục con nào và tích lũy các giá trị trong một tổng quan tốt đẹp:

.­.­.

Ngăn xếp LAMP trong Hệ thống con Windows dành cho Linux

Khi tìm kiếm môi trường phát triển tối ưu, Windows 10 cung cấp một loạt các tùy chọn bên cạnh các giải pháp hoàn chỉnh như XAMPP , WAMPMAMP , cũng như các cài đặt gốc thủ công và các giải pháp ảo hóa như Vagrant ( ScotchBox ) và Docker ( DevilBox , Laradock ). Tuy nhiên, tất cả các giải pháp đều không đáp ứng được yêu cầu của tôi—chẳng hạn như khả năng cấu hình tự do, chứng chỉ SSL ký tự đại diện thực sự, truy cập từ tất cả các thiết bị trên mạng cục bộ, và độ ổn định và hiệu suất cao—ngoại trừ một giải pháp duy nhất.

.­.­.

Thủ thuật cho các mối quan hệ hùng hồn trong Laravel

Một trong những điểm mạnh của Laravel là cú pháp thanh lịch. Nếu bạn có nhiều mô hình và mối quan hệ trong Laravel (do có nhiều bảng trong cơ sở dữ liệu), việc duyệt qua thường có thể kết thúc bằng mã kém tinh tế hơn. Theo thời gian, ba phần mở rộng nhỏ đã được chứng minh là thành công đối với tôi mà tôi muốn giới thiệu ngắn gọn bên dưới. Để làm điều này, chúng tôi chỉ cần sử dụng một số phương pháp kế thừa, phép thuật và bộ sưu tập tùy chỉnh.

.­.­.

Ngăn chặn quyền truy cập công khai vào .git

Quản lý phiên bản Git hiện là tiêu chuẩn trong hầu hết mọi dự án và môi trường web (bao gồm cả môi trường sản xuất). Git luôn tạo một thư mục con có tên là `.git` , và nếu thư mục này nằm cùng cấp với thư mục công khai của trang web, các tệp nhạy cảm có thể được truy cập công khai (ví dụ: truy cập `/.git/logs /HEAD` sẽ hiển thị các commit mới nhất). Hướng dẫn này giải thích chi tiết cách sao chép một kho lưu trữ Git khác ngay cả khi không có danh sách thư mục.

.­.­.

Node.js / npm / Composer không cần root

Trong một bài đăng trên blog cũ hơn, tôi đã mô tả cách lưu trữ Node.js miễn phí bằng Heroku . Bây giờ tôi sẽ chỉ cho bạn một cách bạn có thể cài đặt Node.js , npmComposer trên bất kỳ máy chủ chia sẻ nào khác mà không cần quyền root bằng một vài dòng mã. Với nó, bạn có thể cài đặt các gói, triển khai ứng dụng Vue.js hoặc chỉ khởi động máy chủ Express.js. Chúng tôi luôn làm việc trong thư mục người dùng và sử dụng nvm - Node Package Manager.

.­.­.

Lỗi trong mảng kết hợp trong PHP <7.2

Trong PHP <7.2, bạn có thể tạo các mảng không còn có thể được truy cập đúng cách:

91367d1c4636fd753b381406024e303c

Bạn có thể làm một số điều với nó.

.­.­.

Thực thi các lệnh trực tiếp sau khi kết nối SSH

Lệnh sau thiết lập kết nối SSH đến máy chủ, thực thi một số lệnh (ví dụ: chuyển đến thư mục con và chạy lệnh `git status` ), và giữ cho shell luôn mở. Thao tác này tải tệp `.bashrc`, cho phép sử dụng các subshell có màu. Mẹo ở đây là lưu một tệp tạm thời `/tmp/initfile` chứa các lệnh mong muốn và khởi động một subshell (trong trường hợp này là `bash`) bằng lệnh `--init-file`. Bên trong tệp `initfile` này, tệp tương tự sẽ bị xóa ngay lập tức để không để lại dấu vết.

.­.­.

Ổ đĩa mạng với tư cách quản trị viên

Khi bạn ánh xạ ổ đĩa mạng trong Windows Explorer, thao tác này không áp dụng cho toàn hệ thống mà chỉ áp dụng cho tài khoản người dùng hiện tại. Điều này có nghĩa là ứng dụng chạy với quyền quản trị viên không thể truy cập ổ đĩa mạng này. Bạn có thể dễ dàng thay đổi điều này: Tạo một giá trị DWORD (32-bit) mới có tên EnableLinkedConnections với giá trị 1 trong registry tại HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System khởi động lại máy tính. Sau đó, các ổ đĩa mạng được ánh xạ sẽ hiển thị ở mọi nơi.

.­.­.

Mẹo nhanh: Bao gồm thư mục làm ổ đĩa

Nếu bạn muốn nhanh chóng truy cập vào một thư mục cục bộ trong Windows mà bạn sử dụng nhiều lần, bạn có thể chỉ cần gán ký tự ổ đĩa cho nó. Chỉ có đường vòng qua "Kết nối ổ đĩa mạng" vì bạn không thể chỉ định đường dẫn C: \ Users \ David \ Downloads chẳng hạn. Như một giải pháp, hãy nhập cái gọi là chia sẻ quản trị của ổ đĩa, tồn tại theo mặc định cho mọi thư mục: Trong ví dụ trên, đây sẽ là \\ localhost \ c $ \ Users \ David \ Downloads .

.­.­.

Bắt ếch

Một con ếch nhảy trên trục số, và mục tiêu là bắt nó. Việc nhảy và bắt diễn ra luân phiên. Con ếch bắt đầu ở vị trí \(s \in \mathbb{Z}\) và với mỗi bước di chuyển, nó nhảy một khoảng cách \(z \in \mathbb{Z}\) (nếu \(z>0\) , nó nhảy sang phải; ngược lại, sang trái). \(z\) không đổi cho mỗi lần nhảy. Việc bắt con ếch liên quan đến việc xác định một vị trí số nguyên. Cả \(z\)\(s\) đều không được biết. Chúng ta sẽ chứng minh rằng có một quy trình luôn cho phép chúng ta bắt được con ếch.

.­.­.

Tên tệp dài trên Windows 10

Không chỉ khi sử dụng npm trên Windows, bạn mới gặp phải giới hạn gần 30 năm tuổi và giới hạn đường dẫn đến các thư mục và tệp ở mức tối đa 255 ký tự. Điều đáng trách ở đây không phải là NTFS mà là LFN . Điều này dẫn đến những lỗi khó chịu và không tương thích giữa các hệ điều hành. Đây là một tình huống đáng tiếc trong thời kỳ WSL , nhưng may mắn là bạn đã có thể tự khắc phục nó trong sổ đăng ký được một thời gian.

.­.­.

Laravel xếp hàng trên localhost

Trong framework PHP Laravel, ở môi trường sản xuất, các worker như supervisor đảm bảo rằng các tác vụ được lưu trữ trong Redis , chẳng hạn, được thực thi. Nếu bạn muốn hoàn toàn độc lập với điều này trên localhost, bạn có thể sử dụng trình điều khiển sync để thực thi các tác vụ ngay lập tức. Tuy nhiên, điều này có nhược điểm là tiến trình PHP hiện tại bị chặn và yêu cầu bị treo cho đến khi tác vụ hoàn thành.

.­.­.

Mẹo nhanh: Nhóm các mục tiêu trong Google Analytics

Sử dụng thư viện JavaScript analytics.js của Google Analytics, mọi sự kiện trên trang web đều có thể được theo dõi. Ví dụ, các sự kiện này bao gồm đo lường chính xác thời gian lưu lại trên trang, độ sâu cuộn tối đa của khách truy cập hoặc các hành động riêng lẻ khác như gửi biểu mẫu. Nếu sau này bạn muốn đánh giá các chiến dịch quảng cáo hoặc tiến hành thử nghiệm A/B, bạn sẽ tạo ra các mục tiêu.

.­.­.

Vô hiệu bộ nhớ cache thực dụng

Hiện nay, render phía máy chủ đã trở thành tiêu chuẩn cho các trang web và ứng dụng. Các trình duyệt như Google Chrome cũng thường lưu vào bộ nhớ cache càng nhiều càng tốt để giảm thiểu thời gian tải cho các yêu cầu tiếp theo. Việc vô hiệu hóa bộ nhớ cache của các tệp CSS, JS và hình ảnh có thể được thực hiện bằng cách sử dụng `mod_pagespeed` , tiêu đề điều khiển `Expires` / `Cache` , tệp kê khai bộ nhớ cache , hoặc, một cách thực tế và trực tiếp hơn, bằng cách thêm các tham số tùy chỉnh vào tên tệp.

.­.­.

Khóa Bitbucket và SSH

Nhà cung cấp Bitbucket không cung cấp (ngay cả trong biểu phí Tiêu chuẩn và Cao cấp có tính phí) khả năng lưu trữ các khóa SSH với quyền ghi ở cấp kho lưu trữ. Lưu trữ khóa SSH cá nhân của bạn trên máy chủ sản xuất không phải là một tùy chọn, nếu không, bạn có thể truy cập tất cả các dự án khác mà bạn hiện đang thực hiện từ đó. Có cái gọi là khóa truy cập , nhưng chúng chỉ cho phép quyền đọc.

.­.­.

Windows Sysinternals qua ổ đĩa mạng

Các công cụ Sysinternals của Mark Russinovich rất cần thiết cho bất kỳ máy tính Windows nào. Để luôn có phiên bản mới nhất sẵn sàng, hãy ánh xạ nó thành ổ đĩa mạng. Chỉ cần chạy lệnh `net use s: \\live.sysinternals.com\DavWWWRoot` tại dòng lệnh (với tư cách người dùng thông thường). Điều này sẽ cung cấp quyền truy cập di động vào các công cụ hữu ích như PsList, PsKill và Process Explorer trên ổ đĩa S.

.­.­.

Mẹo nhanh: Google Trang tính và Lịch tuần

Khi xuất các tuần lịch vào một ngày cụ thể, bạn phải cẩn thận trong Google Trang tính (giống như trong Microsoft Excel). Hàm = CALENDAR WEEK (TODAY ()) tính toán theo tiêu chuẩn Hoa Kỳ, trong đó ngày đầu tiên của năm luôn được gán cho tuần 1 dương lịch. Ở Đức, điều này được định nghĩa theo cách khác: Ở đây, tuần đầu tiên theo lịch là tuần mà từ đó có ít nhất 4 ngày bước sang năm mới. Trong Google Trang tính, bạn có thể giải quyết vấn đề (trong số các lựa chọn thay thế thú vị khác như = SHORTEN ((TODAY () - DATE (YEAR (TODAY () - REST (TODAY () - 2; 7) +3); 1; REST (TODAY ( ) -2; 7) -9)) / 7) và sửa đổi = LỊCH TUẦN (TODAY (); 21) ) dễ dàng với hàm được thiết kế đặc biệt = ISOWEEKNUM (TODAY ()) .

.­.­.

Chứng chỉ SSL tự ký trong Chrome 58

Kể từ khi Let's Encrypt ra đời , việc mã hóa website đã trở thành tiêu chuẩn. Chứng chỉ SSL cũng gần như không thể thiếu trong quá trình phát triển cục bộ (ví dụ: navigator.geolocation yêu cầu mã hóa SSL cục bộ). Từ phiên bản Chrome 58 trở đi, hỗ trợ cho CN (Common Name) đã bị loại bỏ và SAN (Subject Alternative Name) hiện là bắt buộc. Do đó, Chrome không còn chấp nhận bất kỳ chứng chỉ SSL nào được tạo bằng các phương pháp truyền thống .

.­.­.

Tuổi hai người gấp đôi

Hãy xem xét hai người \(A\)\(B\) không có cùng ngày sinh, trong đó \(A\) trẻ hơn \(B\) . Hiển thị: Có chính xác hai chòm sao tuổi \(a,b \in \mathbb{N}\) áp dụng những điều sau: \(2\cdot a = b\) . Trước tiên, chúng tôi đặt \(d \in \mathbb{R}^+\) là chênh lệch tuổi tác giữa \(A\)\(B\) khi sinh ra \(A\) với \( d = d_0 + d_1 \) , \( d_0 \in \mathbb{N}_0, d_1 \in \mathbb{R}, d_1 \in [0;1[\) . Bây giờ chúng ta xem xét thời gian tùy ý \(x \in \mathbb{R}^+\) sau khi \(A\) ra đời với \(x = x_0 + x_1\) , \(x_0 \in \mathbb{N}_0, x_1 \in \mathbb{R}, x_1 \in [0;1[\) .

.­.­.

Git và các thư mục trống

Git không biết các thư mục nên chỉ có các tệp, cấu trúc thư mục trống mới không có trong kho lưu trữ. Vì nhiều framework và dự án thực sự cần những thứ này nên chúng sẽ kết thúc ở đó. Một thực tế phổ biến là tạo cái gọi là tệp giữ chỗ (thường được gọi là .gitkeep), chỉ định cấu trúc thư mục một cách ngầm định. Bạn có thể dễ dàng tạo các tệp này và nếu muốn, hãy đảm bảo rằng các tệp khác trong thư mục sẽ bị bỏ qua.

.­.­.

Lưu trữ Node.js miễn phí với Heroku

Lưu trữ cho Node.js vẫn chưa được phổ biến rộng rãi, đặc biệt là ở các nước nói tiếng Đức. Công ty điện toán đám mây của Mỹ Heroku cung cấp một giải pháp khắc phục tại đây - và thậm chí miễn phí . Bạn luôn nhận thấy mô hình "Xây dựng ứng dụng ... không phải cơ sở hạ tầng" và hầu như không có bất kỳ hạn chế nào. Ví dụ: chúng tôi thực hiện một công việc cron nhỏ dựa trên PhantomJS , công việc này quét một trang web mỗi ngày và gửi tiêu đề trang qua email.

.­.­.

Chức năng ghép nối Cantor

Ngoài các đối số đường chéo , Georg Cantor cũng phát triển hàm ghép nối Cantor \(\mathbb{N}^2 \to \mathbb{W}, \quad c(x,y) = \binom{x+y+1}{2}+x = z\) , mã hóa hai số bất kỳ \(x,y \in \mathbb{N}\) thành một số mới \(z \in \mathbb{N}\) . Ví dụ: \(c(3,4)=\binom{3+4+1}{2}+3 = \binom{8}{2}+3=\frac{8!}{6!\cdot 2!} +3 = 31 = z\) mã hóa duy nhất của các số \(3\)\(4\) trong số \(31\) . Hiển thị: Tập giá trị \(\mathbb{W} = \mathbb{N}\) , tức là \(z\) giả sử tất cả các số tự nhiên.

.­.­.

Trái đất và hạt đậu

Xét trái đất (như một hình cầu có \(r_1 = 6370km\) ) và một hạt đậu (như một hình cầu có \(r_2 = 2mm\) ) và căng một sợi dây qua đường xích đạo sao cho nó nằm chặt trên bề mặt. Bây giờ kéo dài cả hai sợi dây thêm một mét. Cả hai dây cáp bây giờ sẽ nằm hoàn toàn phía trên đường xích đạo - nhưng chúng không còn nằm hoàn toàn trên bề mặt nữa mà trôi nổi phía trên đường xích đạo. Sợi dây lơ lửng trên mặt đất cao bao nhiêu, trên hạt đậu cao bao nhiêu?

.­.­.

Xác suất trên đồng hồ kim

Trong% thời gian trong ngày, cả ba kim của đồng hồ kim đều ở nửa bên phải của mặt số? Đầu tiên, hãy nhìn vào kim giờ, ở phía bên phải cứ sau 12 giờ trong 24 giờ (50%). Kể từ thời điểm này, kim phút sẽ ở bên tay phải trong 6/12 giờ (25%). Trong số 6 giờ này, kim giây ở bên phải 3 giờ (12,5%).

.­.­.

Laravel: Làm việc với các mối quan hệ hùng hồn

Laravel giúp việc giao tiếp với cơ sở dữ liệu dễ dàng hơn nhiều với Eloquent. Khi làm việc với Mối quan hệ Eloquent, khi gọi các biến động (sử dụng các phương thức ma thuật của PHP), bạn nên lưu ý rằng các phiên bản của mô hình không phản ánh những thay đổi mới mà thay vào đó lưu chúng vào bộ đệm vĩnh viễn trong lần đầu tiên chúng được gọi.

.­.­.

Bitbucket: Xóa thư mục khỏi lịch sử Git

Khi lưu trữ Git trên Bitbucket , có giới hạn cứng là 2 GB - nếu vượt quá mức này, bạn chỉ có quyền truy cập chỉ đọc vào kho lưu trữ. Để ngăn chặn điều này, ví dụ, bạn có thể xóa các thư mục hoặc tệp lớn khỏi các cam kết của mình trước đó. Nhưng trong các trường hợp khác cũng vậy (nếu dữ liệu truy cập đã được đưa vào lịch sử hoặc node_modules lại chuyển sang chế độ chính), bạn phải thao tác ngược lại lịch sử của Git, trái với bản chất của nó.

.­.­.

Tích hợp chứng chỉ SSL từ DomainFactory trên IIS

Trong thời đại của Let's Encrypt, các trang web được mã hóa giờ đây đã trở thành tiêu chuẩn. Tuy nhiên, các chứng chỉ ký tự đại diện hoặc chứng chỉ mở rộng với xác thực chủ sở hữu đặc biệt đáng tin cậy cũng thường được yêu cầu. DomainFactory cung cấp các chứng chỉ SSL tiết kiệm chi phí, có thể được sử dụng bên ngoài. Việc thiết lập trên máy chủ IIS hiện tại có thể thực hiện mà không cần yêu cầu chứng chỉ (CSR) bằng cách sử dụng OpenSSL . Dưới đây, tôi sẽ tóm tắt ngắn gọn các bước cần thiết.

.­.­.

Chiến lược chiến thắng nghịch lý khi đoán số

Thomas M. Cover đã hỏi một câu hỏi đáng kinh ngạc sau đây vào năm 1987 trong "Các vấn đề mở trong giao tiếp và tính toán": Người chơi \(X\) viết hai số tự nhiên khác nhau và được chọn ngẫu nhiên \(A\)\(B\) thành hai số khác nhau Lật tờ giấy và úp xuống bàn Người chơi \(Y\) bây giờ chọn ngẫu nhiên một trong những mảnh giấy này, nhìn thấy con số và bây giờ phải quyết định xem con số này nhỏ hơn hay lớn hơn con số khác vẫn đang úp trên bàn.

.­.­.

Bóng đá & Đại số tuyến tính

Khi một trận đấu bóng đá bắt đầu, quả bóng nằm ở giữa sân và sau đó được di chuyển quanh sân trong 45 phút bằng cách chuyển và quay. Đầu hiệp hai, bóng lại nằm ở giữa sân. Chúng tôi chỉ ra bằng các phương tiện đơn giản của đại số tuyến tính rằng một số vô hạn các điểm trên bề mặt luôn ở cùng một vị trí chính xác như ở trạng thái ban đầu hoặc chính xác là 2.

.­.­.

Laravel: Gỡ lỗi mẫu Blade

Khi gỡ lỗi các mẫu lưỡi trong Laravel 5.*, bạn thường nhận được các thông báo lỗi vô nghĩa trỏ đến các chế độ xem được lưu trong bộ nhớ đệm. Mọi thứ đã từng tốt hơn: chế độ xem gỡ lỗi trong phiên bản 4 chứa nhiều chức năng hữu ích hơn và cũng hấp dẫn hơn về mặt hình ảnh. Với một vài dòng mã, bạn có thể lấy lại chức năng này với sự trợ giúp của rất tiếc (“Lỗi PHP dành cho những đứa trẻ tuyệt vời”).

.­.­.

Hiển thị hài hòa các biểu trưng với JavaScript

Cho dù là người tham khảo, đối tác hay khách hàng - có nhiều trường hợp bạn muốn hiển thị nhiều logo cạnh nhau một cách hài hòa. Tỷ lệ của các logo hầu hết không nhất quán. Bạn thường làm theo bản năng ruột của mình đối với sự thể hiện kích thước trong thiết kế, nhưng cũng có một phương pháp tính toán chính xác để tạo ra một hình ảnh trực quan hấp dẫn bằng cách cân bằng các khu vực của logo. Trong ví dụ sau, bạn có thể thực hiện việc này chỉ với một vài dòng JavaScript.

.­.­.

Kiểm tra sự tồn tại của các biến trong PHP / JS

Khi làm việc với các biến trong PHP và JavaScript, người ta thường bắt gặp truy vấn xem một biến có trống không. Cần phải biết các hàm gốc và sự khác biệt của chúng để phục vụ mục đích kiểm tra. Thật khó chịu, không có cách nào dễ dàng để kiểm tra một cách trực quan xem một biến có hiện diện hay không. Ma trận dưới đây làm rõ ý nghĩa của điều này. Tuy nhiên, những gì bạn muốn có thể được trang bị thêm với các chức năng trợ giúp nhỏ.

.­.­.

Các cuộc gọi điện thoại lớn với nhâm nhi.io

Với Sipgate.io, Sipgate đã tạo ra một API đám mây thú vị, API này có vô số tùy chọn cho điện thoại Internet. Tài khoản miễn phí và cũng có tùy chọn đặt bất kỳ số người gửi miễn phí nào trong cửa hàng tính năng. Tài liệu từ aimgate.io vẫn có thể mở rộng, nhưng chỉ cần đọc một chút về API Sipgate chính thức, bạn có thể nhanh chóng nhận ra những điều thú vị.

.­.­.

Đệ quy trong SQL

Các hệ quản trị cơ sở dữ liệu quan hệ dựa trên SQL chỉ phù hợp một phần cho các truy vấn phân cấp hoặc đệ quy. Các hệ thống khác như ArangoDB phù hợp hơn cho việc này (đã có một bài thuyết trình tuyệt vời về vấn đề này tại GOTO 2016 ). Tuy nhiên, cũng có thể tạo các truy vấn đệ quy trong SQL bằng cách sử dụng Common Table Expressions (CTT) , cho phép bạn, ví dụ, truy vấn các bảng cha/con truyền thống để tìm tất cả các tổ tiên và hậu duệ.

.­.­.

WordPress: Hủy kích hoạt các trang lưu trữ

Theo w3techs.com , khoảng 27,4% tổng số trang web trên toàn thế giới hiện đang được vận hành với sự trợ giúp của WordPress. Trong rất nhiều trường hợp, đây không phải là blog. WordPress tự động tạo ra rất nhiều URL, thường không được sử dụng và tạo ra rất nhiều liên kết được Google lập chỉ mục mà nhà điều hành trang web thậm chí không có trên màn hình. Tất cả điều này có thể được hủy kích hoạt bằng một lệnh đơn giản.

.­.­.

Đổi tên hàng loạt trường biểu mẫu PDF

Giống như tôi, nếu bạn gặp rắc rối khi đổi tên hàng nghìn tên trường biểu mẫu, bảng điều khiển JavaScript có trong Acrobat là lý tưởng. Trong điều này, bạn không chỉ có thể thực thi bất kỳ mã JavaScript nào mà còn có thể truy cập tất cả nội dung trong PDF (bao gồm các trường biểu mẫu). Vì không có hàm gốc nào để đổi tên trong JS API, các trường biểu mẫu với tất cả các thuộc tính của chúng được sao chép và đặt một tên mới.

.­.­.

Shopware: sửa chữa thay đổi biến thể

Trong Shopware 5, một vấn đề đã biết vẫn chưa được giải quyết: Nếu bạn tạo một bài viết với các biến thể phụ thuộc lẫn nhau với các tùy chọn cấu hình loại trừ lẫn nhau, có thể xảy ra trường hợp không thể chọn một số kết hợp trong giao diện người dùng và do đó không thể đặt hàng. Với sự trợ giúp của một plugin, sự cố có thể dễ dàng được khắc phục vào lúc này.

.­.­.

Một dòng cho số nguyên tố vô hạn

Có rất nhiều bằng chứng về tính vô hạn của số nguyên tố - định lý Euclid nổi tiếng trong Sách Các yếu tố không thiếu trong bất kỳ khóa học lý thuyết số cơ bản nào. Trong nguyệt san Toán học Hoa Kỳ (Số 122) năm 2015, Sam Northshield đã công bố một bằng chứng mâu thuẫn không kém phần thanh lịch dưới dạng một dòng, mà tôi không muốn giấu giếm bạn (với những bình luận ngắn gọn).

.­.­.

Nâng cao dòng lệnh Windows

Dấu nhắc lệnh của Windows bị coi thường có thể được cải thiện trực quan trong một vài bước đơn giản. Vì vậy, bạn không chỉ có thể điều chỉnh màu sắc và kích thước của dòng lệnh mà còn có thể mở rộng nó theo chức năng (tăng bộ đệm, cài đặt một bộ công cụ UNIX lớn). Dấu nhắc lệnh không xuất hiện gần với PowerShell 6.0 hoặc Windows 10 Bash Shell mới , nhưng không cần ẩn cho các tác vụ hàng ngày.

.­.­.

URL động trong Joomla

Trong các hệ thống quản lý nội dung, URL thường không được xác định trước và do đó không được tạo tĩnh (như bài viết hoặc mục menu) từ trước, mà thay vào đó truy cập các đối tượng từ cơ sở dữ liệu. Tương tự như WordPress ( như đã mô tả ở đây ), cũng có thể tạo cấu trúc URL động trong Joomla (độc lập với hệ thống bí danh nội bộ). Điều này có thể được thực hiện bằng JRouter – hoặc chỉ với một dòng mã trong tệp .htaccess.

.­.­.

JavaScript PasteJacking

Các trình duyệt hiện đại có thể sử dụng JavaScript để truy cập và thao tác với bộ nhớ tạm của người dùng, cả đọc và ghi. Công nghệ cơ bản này không có gì mới, nhưng chỉ gần đây mới xuất hiện ngày càng nhiều các cuộc tấn công (được gọi là "pastejacking") trên mạng, khai thác khả năng này để gây hại cho người dùng không hề hay biết. Việc triển khai điều này trong JavaScript khá đơn giản.

.­.­.

Hoán đổi các cột trong PostgreSQL

Hoán đổi các cột trong bảng SQL là một phần của quy trình chuẩn với MySQL - điều này chưa (chưa) được hỗ trợ với PostgreSQL. Mặc dù wiki chính thức dành bài viết riêng của mình để giải quyết vấn đề, nhưng nó không cho thấy bất kỳ giải pháp khả thi nào cũng hỗ trợ chế độ xem, chỉ số và trình kích hoạt. Lớp sau thực hiện công việc này (cho cả MySQL và PostgreSQL) trên dòng lệnh - hoặc cách khác là trực tiếp trong Laravel 5.

.­.­.

Mẹo nhanh cho Windows Explorer

Nếu bạn muốn mở nhanh dấu nhắc lệnh trong một thư mục trong Windows Explorer, hãy nhấp (cao hơn một cấp) bằng nút chuột phải và giữ phím Shift trên thư mục rồi chọn "Mở dấu nhắc lệnh tại đây" từ trình đơn ngữ cảnh. Tôi vừa tìm ra một phương pháp khác nhanh hơn khi bạn đang ở trong thư mục: Tại đây bạn nhấp vào đường dẫn thư mục hiện tại, gõ "cmd" và xác nhận bằng Enter.

.­.­.

Danh mục WordPress: Chế độ xem cây / Kế thừa

Khi làm việc với các danh mục phân cấp (phân loại) trong WordPress, bạn sẽ nhận thấy rằng việc hiển thị các danh mục đã chọn trong phần quản trị có thể gây nhầm lẫn, và bài viết không tự động được đưa vào danh mục cha khi chúng được chuyển sang danh mục con. Cả hai vấn đề này đều có thể dễ dàng giải quyết chỉ với một vài dòng mã bằng cách sử dụng hệ thống hook mạnh mẽ (dưới dạng một hành động và một bộ lọc).

.­.­.

PHP 7 và Nhà điều hành tàu vũ trụ

Ngoài các tính năng mới như gợi ý kiểu cho các kiểu dữ liệu vô hướng hoặc hiệu suất được tối ưu hóa , PHP 7 cũng mang đến nhiều tiện ích mở rộng ngôn ngữ mới, hữu ích với nó. "Spaceship Operator" cuối cùng cũng đã bước vào thế giới PHP (các lập trình viên Ruby và Perl đã biết đến nó từ lâu). \($a <=> $b\) trả về \(0\) nếu và chỉ khi cả hai toán hạng đều bằng nhau, \(1\) nếu toán hạng bên trái lớn hơn và \(-1\) ngược lại.

.­.­.

IIS 7.5 PHP FastCGI hết thời gian chờ

Nếu bạn tích hợp PHP qua FastCGI trên IIS 7.5, mọi tập lệnh sẽ bị hủy theo mặc định sau 600 giây (tức là 10 phút). Việc thay đổi biến nổi tiếng "max_execution_time" trong php.ini không ảnh hưởng đến điều này; bạn phải (cũng) điều chỉnh cài đặt FastCGI. Với mục đích này, IIS cung cấp một giao diện thuận tiện để quản lý các biến liên quan.

.­.­.

Nghịch lý ngẫu nhiên

Lý thuyết xác suất có điều kiện đòi hỏi các nhiệm vụ đẹp đẽ với các giải pháp phản trực giác. Ngoài vấn đề anh chị em đã biết, bây giờ tôi sẽ giải quyết ngắn gọn với một ví dụ khác: "Bây giờ tôi có hai đứa con. Một đứa là con trai và sinh vào thứ Năm. Xác suất đứa trẻ kia cũng là con trai là bao nhiêu?"

.­.­.

Git, Shopware và Thư mục trống

Hệ thống kiểm soát phiên bản tệp Git rất gọn gàng, nhanh chóng và di động. Git luôn xử lý các đối tượng, cụ thể là tệp. Các thư mục chỉ được tạo nếu có tệp trong đó, nếu không Git thậm chí sẽ không ghi lại chúng. Điều này có tác dụng phụ khó chịu trong một số dự án. Ví dụ, hệ thống cửa hàng Shopware dựa vào việc tuân thủ nghiêm ngặt cấu trúc thư mục để hoạt động.

.­.­.

Đồ dùng mua sắm: Chi phí vận chuyển cá nhân

Shopware có một mô-đun chi phí vận chuyển mạnh mẽ mà bạn có thể can thiệp cụ thể vào tính toán. Trong trường hợp của chúng tôi, chúng tôi muốn thực hiện tình huống sau: Chi phí vận chuyển cho mỗi vật phẩm được xác định ban đầu theo trọng lượng của vật phẩm (giới hạn trọng lượng được quy định). Chỉ đối với những trường hợp ngoại lệ đặc biệt mới có thể đặt chi phí vận chuyển cố định cho từng mặt hàng.

.­.­.

Liên kết cố định động trong WordPress

Hệ thống liên kết cố định trong WordPress có thể được điều chỉnh rất tốt theo nhu cầu của riêng bạn với sự trợ giúp của các thẻ cấu trúc . Cài đặt% postname% có lẽ là giải pháp phổ biến và khả thi nhất. Tuy nhiên, nếu bạn muốn triển khai các liên kết động thực sự, trước tiên bạn phải mở rộng hệ thống bằng mã của riêng bạn.

.­.­.

Làm hỏng siêu liên kết trong Word và Excel

Người ta thường kỳ vọng rằng việc mở các siêu liên kết từ bên trong tài liệu Word/Excel sẽ tự động mở trình duyệt mặc định với URL mong muốn. Tuy nhiên, điều kỳ lạ là thực tế lại không như vậy – dẫn đến những tác dụng phụ không mong muốn và khiến việc truy cập các trang được bảo vệ bằng đăng nhập dựa trên phiên hoặc cookie trở nên bất khả thi trong các chương trình Office này.

.­.­.

Một nghịch lý cho Ngày của Cha

Vào Ngày của Cha hôm nay, một cô con gái đang tặng cha một bức tranh mà cô ấy đã tự vẽ, mà cha cô ấy đã ao ước về cô ấy. Con gái nói: "Con sẽ tặng mẹ bức tranh mà con hằng mong ước và món quà của con sẽ là một điều bất ngờ". Người cha giật mình và suy ngẫm về sự thật của câu nói này.

.­.­.

Tích hợp các tập lệnh động có và không có HTTPS

Nếu bạn đưa các tập lệnh không được mã hóa vào vùng <head> và gọi một trang có chứng chỉ SSL hiện có được mã hóa, các tập lệnh này sẽ bị chặn và do đó không được thực thi. Nếu bạn chỉ bỏ qua giao thức, tất cả các tập lệnh sẽ tự động được gọi ở dạng mã hóa nếu trang web được truy cập qua https: // - nếu không thì không được mã hóa.

.­.­.

Khả năng sử dụng trong menu thả xuống

Khi làm việc với các menu thả xuống đa chiều, bạn thường gặp phải vấn đề vô tình mở nhầm menu con hoặc vô tình đóng menu con mong muốn. Điều này xảy ra khi con trỏ chuột rời khỏi menu tương ứng ở cấp độ cao nhất trong khi di chuyển đến một menu con đã được mở rộng.

.­.­.

Phần mềm mua sắm: tự động hủy kích hoạt các biến thể

Trong Shopware , toàn bộ bài viết sẽ bị hủy kích hoạt đối với đơn đặt hàng thực nếu tất cả các biến thể có mức tồn kho nhỏ hơn hoặc bằng 0. Để thực hiện điều này trên cơ sở biến thể, tôi đã lập trình một plugin nhỏ, có Bootstrap.php mà tôi cung cấp bên dưới.

.­.­.

Truy vấn mật khẩu kép với SSL

Tình huống sau đây luôn dẫn đến một tác dụng phụ không mong muốn: Nếu bạn bảo vệ trang web của mình bằng htaccess/htpasswd và đồng thời bắt buộc kết nối SSL, bạn luôn phải nhập cùng một mật khẩu hai lần (một lần cho http và một lần nữa cho https sau khi nhập thành công). Vấn đề này có thể dễ dàng được giải quyết bằng cách sử dụng các phần cấu hình được giới thiệu trong Apache 2.4.

.­.­.

Chuỗi nhiều dòng trong JavaScript

Khi lập trình với JavaScript, người ta thường gặp phải tình trạng không thể triển khai các chuỗi nhiều dòng bằng cách nhập chúng thành nhiều dòng trong mã. Mặc dù tác vụ trong các ngôn ngữ khác như PHP hoặc Ruby không phải là vấn đề, nhưng với JavaScript, ban đầu bạn chỉ có thể thực hiện các giải pháp thay thế, việc sử dụng chúng do sở thích cá nhân hoặc trình duyệt hỗ trợ quyết định.

.­.­.

mail () trong PHP với UTF-8 và âm sắc

Gửi email bằng PHP được triển khai tốt nhất với các lớp mạnh mẽ như PHPMailer . Các chức năng trình bao bọc thuận tiện giúp bạn có thể sử dụng nội dung UTF-8, để nhúng hình ảnh và gửi các tệp đính kèm được mã hóa chỉ với một vài dòng mã. Nếu bạn muốn tiết kiệm chi phí và sử dụng hàm thư () PHP trái với khuyến nghị, bạn sẽ gặp sự cố khi sử dụng âm sắc và UTF-8 mới nhất.

.­.­.

Google PageSpeed ​​Insights so với Google Analytics

Các công cụ kiểm tra tính hợp lệ như Dịch vụ Kiểm tra Mã đánh dấu W3C hoặc Google PageSpeed Insights rất hữu ích để đánh giá khách quan mã nguồn và hiệu suất của một trang web. Đặc biệt, Google có ảnh hưởng đến toàn bộ ngành công nghiệp với các khái niệm như "phần hiển thị đầu tiên" và cũng đặt ra các hướng dẫn nghiêm ngặt nhưng hữu ích về nén và lưu trữ hình ảnh. Tuy nhiên, trong quá trình đó, Google đôi khi lại tự gây ra lỗi cho chính mình.

.­.­.

Chào mừng JavaScript 2.0

JavaScript đang thống trị web – và ECMAScript, cốt lõi của ngôn ngữ này, đang ngày càng hoàn thiện. Phiên bản đặc tả mới (ES6 hoặc JS2), dự kiến ra mắt vào giữa năm nay, mang đến nhiều cải tiến mà người dùng đã có thể thử nghiệm. Firefox hiện đang cung cấp hỗ trợ tốt nhất , nhưng việc sử dụng polyfill thông qua các trình biên dịch như Google Traceur cũng khả thi. Sau đây là tổng quan ngắn gọn về các tính năng mới của ES6.

.­.­.

0,99999... = 1?

Dù ở trường hay ở trường đại học: Một câu hỏi thú vị \( 0,99999... = 1 \) bao gồm câu hỏi liệu phương trình sau có đúng không: \( 0,99999... = 1 \) . Mặc dù các số vô cực ở phần bên trái của phương trình, chúng tôi đặt tên cho nó: \(0,99999... = A\) . Sau khi nhân với thừa số \(10\) và các phép biến đổi đại số đơn giản, chúng ta có được cái nhìn sâu sắc đáng kinh ngạc đầu tiên.

.­.­.

SQL: hiệu suất kém mặc dù có chỉ mục

Tôi vừa gặp phải sự cố hiệu suất sau của cơ sở dữ liệu SQL: Trong bảng SQL có tên "người dùng" với ~ 1.000.000 mục nhập, phải mất 28 giây không thể chấp nhận được để xác định số lượng đăng ký ngày hôm nay. Trong cột "đã tạo", thời gian của các đăng ký được lưu ở định dạng "Ymd H: i: s".

.­.­.

Vấn đề cờ vua nhỏ

Ngoài bài toán hiệp sĩ hay bài toán nữ hoàng, trong thế giới cờ vua còn rất nhiều câu hỏi hấp dẫn khác. Tôi đã đề cập đến hai điều tò mò nhỏ trong một mục blog trước. Nếu bạn giải quyết các vấn đề về cờ vua bằng toán học, bạn sẽ nhanh chóng nhận thấy rằng toán học cung cấp các câu trả lời rất đơn giản và sáng suốt cho nhiều câu hỏi.

.­.­.

Tệp có sẵn trực tuyến với OneDrive

Nếu Một ổ đĩa, Dropbox, Google Drive, OwnCloud, Box.net: Bất kể bạn lưu trữ tệp của mình trong hộp nào - các dịch vụ gần như giống nhau. Các ứng dụng khách có sẵn cho tất cả các hệ thống máy tính để bàn và di động, các tệp không được mã hóa tiêu chuẩn và các tùy chọn chia sẻ chỉ khác nhau một chút. Nhưng OneDrive, được tích hợp vào hệ thống kể từ Windows 8.1, có một điểm đặc biệt: chỉ có các tệp trực tuyến.

.­.­.

PHP: Truy cập tệp với âm sắc trong Windows

Các tệp trên máy chủ web luôn phải được lưu trữ không có khoảng trắng (không phải "this is an image.jpg"), không có dấu umlaut hoặc ký tự đặc biệt (không phải "football.jpg"), không có dấu gạch chéo ngược (không phải "work\car.jpg") và viết thường (không phải "test.JPG"). Tuy nhiên, gần đây, trong một dự án của khách hàng, tôi phải truy cập và xử lý một số lượng lớn các tệp được định nghĩa trước với tên tệp tùy ý.

.­.­.

Truy vấn SQL để xác định danh sách xếp hạng

Hôm nay, tôi đã gặp nhiệm vụ sau khi làm việc trong một dự án khách hàng: Lấy một "người dùng" trong bảng SQL với các cột "id" và "score" và xác định danh sách xếp hạng của tất cả người dùng, được sắp xếp dựa trên "điểm", trong đó những người dùng có cùng số điểm sẽ có cùng thứ hạng. Bằng cách sử dụng các biến do người dùng xác định, nhiệm vụ này có thể được giải quyết một cách trực quan và dễ dàng.

.­.­.

SDK Facebook: Kiểm tra mã thông báo ở phía máy chủ

Khi làm việc với Facebook SDK (chính xác hơn là khi triển khai chức năng đăng nhập Facebook trong giao diện REST), mã thông báo mà khách hàng nhận được từ Facebook trước tiên phải được máy chủ kiểm tra tính hợp lệ trước khi thực hiện các hoạt động tiếp theo .

.­.­.

Chrome DevTools: Giải quyết các phần tử DOM

Cho dù Chrome, Firefox, Opera, Safari hay thậm chí là Internet Explorer: Mặc dù các công cụ dành cho nhà phát triển được thiết kế tốt là điểm bán hàng độc nhất của Firefox và trình cắm Firebug phổ biến cho đến vài năm trước, nhưng các công cụ dành cho nhà phát triển mạnh mẽ hiện là một phần trong phạm vi tiêu chuẩn của mọi trình duyệt mà trong đó có rất nhiều thứ để khám phá cho.

.­.­.

Truy cập vào hệ thống tệp bằng SQL

Gần đây tôi tình cờ phát hiện ra một cách hay để truy cập hệ thống tập tin và lấy thông tin có giá trị, chẳng hạn như sự tồn tại của các tập tin và thư mục hoặc nội dung của chúng. Điều này có thể rất hữu ích như một giải pháp thay thế cho hàm PHP ` file_exists` , vì thông tin về sự tồn tại của tập tin có thể được sử dụng trong truy vấn cho các hàm sắp xếp và tổng hợp tiếp theo.

.­.­.

Hình nền động với canvas

Hình nền vector hoạt hình có thể thêm đa dạng cho cảnh quan web được đặc trưng bởi ảnh và video toàn màn hình. Sẽ thật tuyệt nếu điều này đi đôi với thời gian tải và hỗ trợ phần cứng và phần mềm rộng rãi. Một giải pháp là: canvas. Phần tử HTML được điều khiển bởi JavaScript được hỗ trợ bởi tất cả các trình duyệt hiện tại và được tái tạo với hiệu suất cao trên thiết bị di động.

.­.­.

Tỷ lệ co cố định cho các phần tử HTML

Là một nhà phát triển web, bạn thường thấy mình rơi vào tình thế tiến thoái lưỡng nan khi làm việc với các phần tử HTML - chẳng hạn, không giống như phần tử img - không có kích thước cố định cũng như tỷ lệ khung hình cố định. Thông thường, bạn muốn đảm bảo rằng các đối tượng này hoạt động linh hoạt nhưng tỷ lệ giữa chiều rộng và chiều cao vẫn được duy trì. Theo mặc định, CSS không cung cấp giải pháp trực quan ở đây. Nhưng với sự trợ giúp của thuộc tính đệm dọc, bạn có thể đạt được mục tiêu của mình.

.­.­.

Phán quyết của tòa án về việc sử dụng ảnh có sẵn

Sau khi Tòa án Khu vực Cologne rút lại phán quyết hồi tuần trước trong vụ bê bối RedTube và lẽ ra không bao giờ cho phép công bố các địa chỉ IP gây tranh cãi, giờ đây tòa án này lại đưa ra một phán quyết gây tranh cãi và đáng ngờ khác với quyết định 14 O 427/13: Tác giả của các ảnh lưu trữ từ một công ty ảnh cụ thể cũng phải được nêu tên khi hình ảnh của họ được truy cập trực tiếp thông qua URL của chúng.

.­.­.

Tạm biệt Block & Inline - Chào mừng HTML5

Có rất nhiều đổi mới trong đặc tả HTML5 và nhiều cải tiến trong số đó đã được phần lớn bối cảnh trình duyệt hỗ trợ - dưới đây tôi muốn nêu bật một thay đổi thú vị đối với các quy tắc về lồng các phần tử. HTML luôn phân biệt giữa các phần tử khối và nội tuyến. Ví dụ: Định nghĩa loại tài liệu của HTML4 liệt kê h1, p và div là các phần tử khối và a, span và img là các phần tử nội tuyến.

.­.­.

Ghi nhật ký HTTP trên IIS và Apache

Cả Apache trên Unix và IIS trên hệ thống Windows đều ghi lại các yêu cầu HTTP ngay lập tức ở dạng tệp. Để bảo vệ khỏi các cuộc tấn công hack, các truy vấn tới trang web của riêng bạn phải được đánh giá và phân tích thường xuyên theo cách thủ công và tự động (ví dụ: sử dụng công cụ phân tích tệp nhật ký như AWStats ). Ví dụ: trong các cấu hình được sử dụng rộng rãi, đường dẫn của các tệp nhật ký liên quan như sau:

  • /var/log/apache2/access.log (Ví dụ: Ubuntu 12.04, Apache 2.2)
  • C:\inetpub\logs\LogFiles\W3SVC1\u_ex<YYMMDD>.log (Ví dụ: Windows Server 2012 R2, IIS 8.5)
.­.­.

Joomla, IIS và các quyền thư mục

Khi tích hợp Joomla 3.2 trên Windows Server 2008 R2 với IIS 7.5, các vấn đề về quyền thư mục thường phát sinh, thường không được giải quyết bằng các cài đặt được chọn quá rộng rãi. Giải pháp sau đây là an toàn và đầy đủ chức năng:

  • Nhóm IIS_IUSRS cần các quyền cho C: \ inetpub \ wwwroot \: Đọc & Thực thi, Hiển thị nội dung thư mục, Đọc, Ghi
  • Nhóm IIS_IUSRS cần các quyền cho C: \ Windows \ Temp \: Đọc & Thực thi, Hiển thị nội dung thư mục, Đọc, Ghi
  • Người dùng IUSR phải thuộc nhóm IIS_IUSRS (Quản lý máy tính> Người dùng cục bộ và nhóm> Nhóm)

Nếu bạn cần thêm các quyền thư mục đặc biệt (ví dụ đối với SSH hoặc FTP) cho tất cả các tệp được tải lên qua PHP, bạn cũng nên đặt các quyền này cho thư mục C:\Windows\Temp\. Nếu bạn tải tệp lên qua PHP, trước tiên PHP sẽ sao chép tệp này vào đường dẫn tạm thời rồi đến đường dẫn cuối cùng. Nếu tệp nằm trong thư mục tạm thời, nó sẽ kế thừa các quyền của nó và giữ lại chúng sau khi được chuyển đến thư mục cuối cùng.

.­.­.

Ẩn danh trên mạng: Không thể?

Trong thời điểm xảy ra vụ bê bối NSA, không chỉ những người dùng hiểu biết về mạng đang tự hỏi liệu người ta có thể điều hướng mạng ẩn danh để thoát khỏi sự điên cuồng thu thập dữ liệu của chính quyền và các cơ quan mật vụ. Tuy nhiên, điều này thường dẫn đến sai sót và các giả định không chính xác. Một quan niệm sai lầm chính là giảm thiểu tính ẩn danh đối với sự xáo trộn của địa chỉ IP.

.­.­.

McFIT - logo mới, hình ảnh mới

Chuỗi cửa hàng thể hình giảm giá McFIT đang tạo cho mình một diện mạo mới. Trong khi linh vật màu vàng sáng hình quả chuối dùng để tô điểm cho dòng chữ màu xanh thì giờ đây, chiếc nơ màu vàng trên nền màu than antraxit khéo léo kết hợp với nhau, tạo thành một cấu trúc trừu tượng. Màu xanh và vàng của FDP không chỉ xuất hiện trên logo mà còn trên tất cả các mặt hàng in khác của thương hiệu McFIT.

.­.­.

Photoshop: du hành ngược thời gian

Khi hai anh em Thomas và John Knoll bắt đầu phát triển Adobe Photoshop vào năm 1987, tôi vẫn chưa ra đời. Ngày nay, vào năm 2013, phần mềm này là một trong những chương trình phổ biến nhất nói chung và được coi là người dẫn đầu không thể tranh cãi trong lĩnh vực chỉnh sửa hình ảnh. Nhờ có Adobe và Bảo tàng Lịch sử Máy tính, phần mềm này giờ đây sẽ được lưu giữ cho hậu thế dưới một hình thức rất đặc biệt.

.­.­.

Sự tò mò trong trò chơi của các vị vua

Cờ vua đã mê hoặc mọi người trong nhiều thế kỷ - các quy tắc của nó rất dễ học và độ sâu khó tin của nó chỉ những người chơi có kinh nghiệm mới có thể tiếp cận được (tiếc là không phải một trong số họ). Sau đây, tôi sẽ giải quyết hai câu hỏi ngắn gọn: Liệu có thể, thông qua một trình tự chính xác của nước đi, để đến vị trí mà vua đen bị tấn công bởi hai quân hậu trắng cùng một lúc? Điều này cũng có thể với hai tòa tháp màu trắng?

.­.­.

Docu-soap thay vì bom tấn: 48fps

Phim thường được quay và phát lại ở tốc độ 24 khung hình đầy đủ mỗi giây - nhưng định dạng tiêu chuẩn gần 100 năm tuổi "24p" dường như đang chao đảo. Để ngăn chặn các tác dụng phụ khó chịu (ví dụ: hiện tượng giật mạnh khi lia máy ở tốc độ trung bình) của trình chiếu 24 khung hình/giây, công việc đã được tiến hành trong một thời gian dài nhằm tăng gấp đôi tốc độ khung hình lên 48 khung hình/giây trở lên.

.­.­.

Kiểm tra chính tả trên các trang web

Kiểm tra chính tả và ngữ pháp tự động hiện là thiết bị tiêu chuẩn trong các chương trình xử lý văn bản - nhưng việc kiểm tra chính tả tự động của một trang web cho đến nay tương đối rườm rà. Google Chrome đang thực hiện bước đầu tiên theo hướng này với kiểm tra tích hợp trong các trường nhập nhiều dòng (textarea). Bây giờ có một dịch vụ làm cho điều này có thể thực hiện cho toàn bộ trang web.

.­.­.

Số điện thoại trong liên kết - một rủi ro bảo mật?

Một vài tuần trước, tôi đã báo cáo về cách bạn có thể cho phép khách truy cập của mình mở ứng dụng điện thoại trên thiết bị di động bằng cách nhấn vào một số điện thoại. Giờ đây, một khả năng đã xuất hiện để chặn không thể thu hồi thẻ SIM hoặc đặt lại thiết bị về cài đặt gốc mà không cần bất kỳ hành động nào từ phía người dùng.

.­.­.

Sự tò mò thú vị về email

Tên miền và địa chỉ email có nên luôn ở dạng chữ thường để đảm bảo bạn đến được nơi mình muốn không? Hay điều này hoàn toàn không liên quan? Ví dụ, các máy chủ thư của Google có các cài đặt lạ với các hiệu ứng thú vị mà tôi sẽ giới thiệu ngắn gọn bên dưới.

.­.­.

Thiết kế giá chứng khoán trong các chủ đề hàng ngày

Tôi theo dõi sát sao việc thiết kế các chương trình khác nhau trên truyền hình Đức. Hầu như không có bất kỳ chương trình phát sóng nào giữ được thiết kế công ty của nó vĩnh viễn. Nghi thức buổi tối của cuộc họp trước màn hình tivi lúc 10h15 về các chủ đề trong ngày gần đây đã khiến tôi đau bụng: Trong vài tháng nay, một bảng màu hoàn toàn khó hiểu đã được chọn để trình bày giá chứng khoán hiện tại.

.­.­.

Liên kết các số điện thoại một cách chính xác

Nếu bạn tối ưu hóa trang web của riêng mình cho thiết bị di động, bạn không chỉ nên chú ý đến các kích thước màn hình khác nhau, thời gian tải được tối ưu hóa và các tính năng đặc biệt khi vận hành (chẳng hạn như hiệu ứng di chuột) mà còn phải tính đến khả năng đặc biệt của thiết bị. Điều này cũng bao gồm (một số người có thể đã quên) gọi điện thoại.

.­.­.

Nội dung trùng lặp trên blog

Google thường phạt những nội dung giống hệt nhau trên nhiều trang web—tuy nhiên, thuật toán của Google rất thông minh và nhận biết được liệu các yếu tố trong phần đầu trang và chân trang có nhất quán hay không, hoặc liệu toàn bộ đoạn văn bản có thể truy cập được hai lần dưới các URL khác nhau hay không. Câu hỏi về cách Google xử lý các trang tổng quan bài viết trên blog đặc biệt thú vị.

.­.­.

Tăng cường bảo mật cho WordPress

Tính bảo mật của WordPress, hiện là hệ thống quản lý nội dung phổ biến nhất, có thể được cải thiện đáng kể bằng cách điều chỉnh hai thiết lập nhỏ. Việc này chỉ mất 5 phút và hai dòng mã. Mặc dù vấn đề này cũng có thể được giải quyết bằng nhiều plugin khác nhau, nhưng ở đây tôi sẽ chỉ đề cập đến các giải pháp không cần plugin.

.­.­.